sql >> Base de Datos >  >> RDS >> Sqlserver

Cómo instalar SQL Server en una Mac

Aquí le mostraré cómo poner en funcionamiento SQL Server en su Mac en menos de media hora. Y lo mejor es que tendrá SQL Server ejecutándose localmente sin necesidad de ningún software de virtualización.

Antes de SQL Server 2017, si deseaba ejecutar SQL Server en su Mac, primero tenía que crear una máquina virtual (usando VirtualBox, Parallels Desktop, VMware Fusion o Bootcamp), luego instalar Windows en esa VM y finalmente SQL Server . Esta sigue siendo una opción válida según sus requisitos (aquí se explica cómo instalar SQL Server en una Mac con VirtualBox si desea probar ese método).

A partir de SQL Server 2017, ahora puede instalar SQL Server directamente en una máquina Linux. Y debido a que macOS está basado en Unix (y Linux está basado en Unix), puede ejecutar SQL Server para Linux en su Mac. La forma de hacerlo es ejecutar SQL Server en Docker.

Así que sigamos adelante e instalemos Docker. Luego, descargaremos e instalaremos SQL Server.

Pero primero… si usa una Mac con el chip M1, consulte Cómo instalar SQL Server en una Mac M1 (ARM64).

  1. Instalar Docker

    Descargue la (gratuita) Docker Community Edition para Mac (a menos que ya la tenga instalada en su sistema). Esto le permitirá ejecutar SQL Server desde un contenedor Docker.

    Para descargar, visite la página de descarga de Docker CE para Mac y haga clic en Obtener Docker .

    Para instalar, haga doble clic en .dmg y luego arrastre el Docker.app icono de su Solicitud carpeta.

    ¿Qué es Docker?

    Docker es una plataforma que permite que el software se ejecute en su propio entorno aislado. SQL Server (desde 2017) se puede ejecutar en Docker en su propio contenedor aislado. Una vez que Docker esté instalado, simplemente descargue, o "extraiga", SQL Server en Linux Docker Image a su Mac, luego ejecútelo como un contenedor de Docker. Este contenedor es un entorno aislado que contiene todo lo que SQL Server necesita para ejecutarse.

  2. Iniciar ventana acoplable

    Inicie Docker de la misma manera que iniciaría cualquier otra aplicación (p. ej., a través de la carpeta Aplicaciones, el Launchpad, etc.).

    Cuando abra Docker, es posible que se le solicite su contraseña para que Docker pueda instalar sus componentes de red y enlaces a las aplicaciones de Docker. Continúe y proporcione su contraseña, ya que Docker necesita esto para ejecutarse.

  3. Aumentar la memoria (opcional)

    De forma predeterminada, Docker puede tener asignados 2 GB de memoria. SQL Server necesita al menos 2 GB. Sin embargo, no te hará daño aumentarlo si puedes.

    En mi caso lo aumenté a 4GB.

    Para hacer esto, seleccione Preferencias desde el pequeño icono de Docker en el menú superior:

    Luego en los Recursos> Avanzado pantalla, deslice el control deslizante de memoria hasta al menos 4 GB:

    Luego termine haciendo clic en Aplicar y reiniciar

  4. Descargar Servidor SQL

    Ahora que Docker está instalado, podemos descargar e instalar SQL Server para Linux.

    Abra una ventana de Terminal y ejecute el siguiente comando.

    sudo docker pull mcr.microsoft.com/mssql/server:2019-latest
    

    Esto descarga la última imagen de Docker de SQL Server 2019 para Linux en su computadora.

    También puede buscar la última versión del contenedor en el sitio web de Docker si lo desea.

  5. Ejecutar la imagen de Docker

    Ejecute el siguiente comando para iniciar una instancia de la imagen de Docker que acaba de descargar:

    docker run -d --name sql_server_demo -e 'ACCEPT_EULA=Y' -e 'SA_PASSWORD=reallyStrongPwd123' -p 1433:1433 mcr.microsoft.com/mssql/server:2019-latest
    

    Eso sí, utiliza tu propio nombre y contraseña. Además, si descargó una imagen de Docker diferente, reemplace mcr.microsoft.com/mssql/server:2019-latest con el que descargaste.

    Aquí hay una explicación de los parámetros:

    -d Este parámetro opcional inicia el contenedor Docker en modo daemon. Esto significa que se ejecuta en segundo plano y no necesita abrir su propia ventana de Terminal. Puede omitir este parámetro para que el contenedor se ejecute en su propia ventana de Terminal.
    --name sql_server_demo Otro parámetro opcional. Este parámetro le permite nombrar el contenedor. Esto puede ser útil al detener e iniciar su contenedor desde la Terminal.
    -e 'ACCEPT_EULA=Y' El Y muestra que está de acuerdo con el EULA (Acuerdo de licencia de usuario final). Esto es necesario para que SQL Server para Linux se ejecute en su Mac.
    -e 'SA_PASSWORD=reallyStrongPwd123' Parámetro obligatorio que establece el sa contraseña de la base de datos.
    -p 1433:1433 Esto asigna el puerto local 1433 al puerto 1433 en el contenedor. Este es el puerto TCP predeterminado que usa SQL Server para escuchar las conexiones.
    mcr.microsoft.com/mssql/server:2019-latest Esto le dice a Docker qué imagen usar. Si descargó uno diferente, utilícelo en su lugar.

    Potencia de la contraseña

    Si recibe el siguiente error en este paso, inténtelo de nuevo, pero con una contraseña más segura.

    Microsoft(R) SQL Server(R) setup failed with error code 1. Please check the setup log in /var/opt/mssql/log for more information.
    

    Recibí este error al usar reallyStrongPwd como la contraseña (pero por supuesto, es no una contraseña realmente fuerte!). Pude superar esto agregando algunos números al final. Sin embargo, si no fuera solo una demostración, definitivamente la haría más fuerte que algunas palabras y números del diccionario.

  6. Verifique el contenedor Docker (opcional)

    Puede escribir el siguiente comando para comprobar que el contenedor Docker se está ejecutando.

    docker ps
    

    Si está en funcionamiento, debería devolver algo como esto:

    CONTAINER ID        IMAGE                                        COMMAND                CREATED             STATUS              PORTS                    NAMES
    4e4aa21eb391        mcr.microsoft.com/mssql/server:2019-latest   "/opt/mssql/bin/sqls…" 23 seconds ago      Up 21 seconds       0.0.0.0:1433->1433/tcp   sql_server_demo
    
  7. Instalar sql-cli (a menos que ya esté instalado)

    Ejecute el siguiente comando para instalar la herramienta de línea de comandos sql-cli. Esta herramienta le permite ejecutar consultas y otros comandos en su instancia de SQL Server.

    npm install -g sql-cli
    

    Esto supone que tiene NodeJs instalado. Si no lo hace, primero descárguelo de Nodejs.org. La instalación de NodeJs instalará automáticamente npm que es lo que usamos en este comando para instalar sql-cli.

    ¿Error de permisos?

    Si obtiene un error, y parte de él dice algo como Intente ejecutar este comando nuevamente como raíz/Administrador , inténtelo de nuevo, pero esta vez anteponga sudo a su orden:

    sudo npm install -g sql-cli
    
  8. Conectarse a SQL Server

    Ahora que sql-cli está instalado, podemos comenzar a trabajar con SQL Server a través de la ventana Terminal en nuestra Mac.

    Conéctese a SQL Server usando mssql comando, seguido de los parámetros de nombre de usuario y contraseña.

    mssql -u sa -p reallyStrongPwd123
    

    Deberías ver algo como esto:

    Connecting to localhost...done
    
          sql-cli version 0.6.0
          Enter ".help" for usage hints.
          mssql>
    

    Esto significa que se ha conectado con éxito a su instancia de SQL Server.

  9. Ejecutar una prueba rápida

    Ejecute una prueba rápida para verificar que SQL Server esté funcionando y pueda consultarlo.

    Por ejemplo, puede ejecutar el siguiente comando para ver qué versión de SQL Server está ejecutando:

    select @@version
    

    Si se está ejecutando, debería ver algo como esto (pero, por supuesto, esto dependerá de la versión que esté ejecutando):

    +--------------------+
    | (No column name)   |
    |--------------------|
    | Microsoft SQL Server 2019 (RTM-CU3) (KB4538853) - 15.0.4023.6 (X64) 
            Mar  4 2020 00:59:26 
            Copyright (C) 2019 Microsoft Corporation
            Developer Edition (64-bit) on Linux (Ubuntu 18.04.4 LTS)                     |
    +--------------------+
    (1 row affected)
    

    Si ve un mensaje como este, felicidades:¡SQL Server ya está funcionando en su Mac!

    Ahora puede continuar y ejecutar consultas SQL contra SQL Server.

    Consulte mi Tutorial de SQL gratuito para principiantes para comenzar a escribir consultas simples en SQL Server.

Una GUI de SQL Server para su Mac:Azure Data Studio

Azure Data Studio (anteriormente SQL Operations Studio) es una herramienta de administración de GUI gratuita que puede usar para administrar SQL Server en su Mac. Puede usarlo para crear y administrar bases de datos, escribir consultas, respaldar y restaurar bases de datos y más.

Azure Data Studio está disponible en Windows, Mac y Linux.

Aquí hay algunos artículos/tutoriales que he escrito para Azure Data Studio:

  • Qué es Azure Data Studio
  • Cómo instalar Azure Data Studio en tu Mac
  • Cómo crear una base de datos con Azure Data Studio
  • Cómo restaurar una base de datos con Azure Data Studio en una Mac

Otra GUI gratuita de SQL Server:DBeaver

Otra herramienta GUI de SQL Server que puede usar en su Mac (y Windows/Linux/Solaris) es DBeaver.

DBeaver es una herramienta gratuita de gestión de bases de datos de código abierto que se puede utilizar en la mayoría de los sistemas de gestión de bases de datos (como MySQL, PostgreSQL, MariaDB, SQLite, Oracle, DB2, SQL Server, Sybase, Microsoft Access, Teradata, Firebird, Derby y más ).

Escribí una pequeña introducción a DBeaver, o puede ir directamente a la página de descarga de DBeaver y probarlo con su nueva instalación de SQL Server.

Limitaciones de SQL Server para Linux/Mac

SQL Server para Linux tiene algunas limitaciones en comparación con las ediciones de Windows (aunque esto podría cambiar con el tiempo). La versión de Linux no incluye muchos de los servicios adicionales que están disponibles en la versión de Windows, como Analysis Services, Reporting Services, etc. Aquí hay una lista de lo que está disponible y lo que no está en SQL Server 2017 para Linux y aquí está la lista de Microsoft de Ediciones y características compatibles de SQL Server 2019 en Linux.

Otra limitación es que SQL Server Management Studio no está disponible en Mac o Linux. SSMS es una administración de GUI completa para SQL Server y proporciona muchas más funciones que Azure Data Studio y DBeaver (al menos en el momento de escribir este artículo). Todavía puede usar SSMS en una máquina con Windows para conectarse a SQL Server en una máquina con Linux o Mac, pero no puede instalarlo localmente en la máquina con Linux o Mac.

Si necesita alguna de las características que no son compatibles con SQL Server para Linux, necesitará SQL Server para Windows. Sin embargo, aún puede ejecutar SQL Server para Windows en su Mac mediante el uso de un software de virtualización. Aquí se explica cómo instalar SQL Server para Windows en una Mac usando VirtualBox.