Inicio rápido: Instalación de SQL Server y creación de una base de datos en Ubuntu
Se aplica a:
SQL Server (todas las versiones admitidas): Linux
En este inicio rápido, instalará SQL Server 2017 en Ubuntu 16.04/18.04. Después, se conectará con sqlcmd para crear la primera base de datos y ejecutar consultas.
Sugerencia
Este tutorial necesita la intervención del usuario y una conexión a Internet. Si le interesan los procedimientos de instalación desatendida o sin conexión, consulte la Guía de instalación para SQL Server en Linux. Para ver la lista de plataformas admitidas, consulte Notas de la versión.
En este inicio rápido, instalará SQL Server 2019 en Ubuntu 16.04, 18.04 o 20.04. Después, se conectará con sqlcmd para crear la primera base de datos y ejecutar consultas.
Nota
Ubuntu 20.04 se admite a partir de SQL Server 2019 CU10.
Sugerencia
Este tutorial necesita la intervención del usuario y una conexión a Internet. Si le interesan los procedimientos de instalación desatendida o sin conexión, consulte la Guía de instalación para SQL Server en Linux. Para ver la lista de plataformas admitidas, consulte Notas de la versión.
Prerrequisitos
Debe tener un equipo Ubuntu 16.04 o 18.04 con al menos 2 GB de memoria.
Para instalar Ubuntu 18.04 en un equipo propio, vaya a http://releases.ubuntu.com/bionic/. También puede crear máquinas virtuales de Ubuntu en Azure. Consulte Creación y administración de máquinas virtuales Linux con la CLI de Azure.
Nota
En este momento, no se admite como destino de instalación para cargas de trabajo de producción el Subsistema de Windows para Linux para Windows 10.
Para conocer otros requisitos del sistema, vea Requisitos del sistema para SQL Server en Linux.
Nota
Ubuntu 18.04 se admite a partir de SQL Server 2017 CU20. Si desea usar las instrucciones de este artículo con Ubuntu 18.04, asegúrese de que usa la ruta de acceso del repositorio correcta, 18.04 en lugar de 16.04.
Si está ejecutando SQL Server en una versión anterior, la configuración es posible con modificaciones.
Debe tener un equipo Ubuntu 16.04, 18.04 o 20.04 con al menos 2 GB de memoria.
Para instalar Ubuntu 20.04 en un equipo propio, vaya a https://releases.ubuntu.com/20.04/. También puede crear máquinas virtuales de Ubuntu en Azure. Consulte Creación y administración de máquinas virtuales Linux con la CLI de Azure.
Nota
En este momento, no se admite como destino de instalación para cargas de trabajo de producción el Subsistema de Windows para Linux para Windows 10.
Para conocer otros requisitos del sistema, vea Requisitos del sistema para SQL Server en Linux.
Instalar SQL Server
Nota
Los siguientes comandos para SQL Server 2017 apuntan al repositorio de Ubuntu 18.04. Si usa Ubuntu 16.04, cambie la ruta de acceso siguiente a /ubuntu/16.04/ en lugar de /ubuntu/18.04/.
Para configurar SQL Server en Ubuntu, ejecute los siguientes comandos en un terminal para instalar el paquete mssql-server.
Importe las claves de GPG del repositorio público:
wget -qO- https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -Registre el repositorio de Ubuntu de Microsoft SQL Server:
Para Ubuntu 16.04:
sudo add-apt-repository "$(wget -qO- https://packages.microsoft.com/config/ubuntu/16.04/mssql-server-2017.list)"Para Ubuntu 18.04:
sudo add-apt-repository "$(wget -qO- https://packages.microsoft.com/config/ubuntu/18.04/mssql-server-2017.list)"Sugerencia
Si quiere instalar SQL Server 2019, debe registrar en su lugar el repositorio de SQL Server 2019. Use el comando siguiente para las instalaciones de SQL Server 2019:
Para Ubuntu 16.04:
sudo add-apt-repository "$(wget -qO- https://packages.microsoft.com/config/ubuntu/16.04/mssql-server-2019.list)"Para Ubuntu 18.04:
sudo add-apt-repository "$(wget -qO- https://packages.microsoft.com/config/ubuntu/18.04/mssql-server-2019.list)"Ejecute los comandos siguientes para instalar SQL Server:
sudo apt-get update sudo apt-get install -y mssql-serverCuando finalice la instalación del paquete, ejecute mssql-conf setup y siga las indicaciones para establecer la contraseña de administrador del sistema y elegir la edición.
sudo /opt/mssql/bin/mssql-conf setupSugerencia
Las siguientes ediciones de SQL Server 2017 tienen licencia gratuita: Evaluation, Developer y Express.
Nota
Asegúrese de especificar una contraseña segura para la cuenta del administrador del sistema (longitud mínima de 8 caracteres, incluidas mayúsculas y minúsculas, dígitos en base 10 o símbolos no alfanuméricos).
Cuando finalice la configuración, compruebe que el servicio se esté ejecutando:
systemctl status mssql-server --no-pagerSi planea conectarse de forma remota, es posible que también tenga que abrir el puerto TCP de SQL Server (valor predeterminado: 1433) en el firewall.
En este momento, SQL Server se está ejecutando en el equipo Ubuntu y está listo para usarse.
Instalar SQL Server
Nota
Los siguientes comandos para SQL Server 2019 apuntan al repositorio de Ubuntu 20.04. Si usa Ubuntu 18.04 o 16.04, cambie la ruta de acceso siguiente a /ubuntu/18.04/ o /ubuntu/16.04/ en lugar de /ubuntu/20.04/.
Para configurar SQL Server en Ubuntu, ejecute los siguientes comandos en un terminal para instalar el paquete mssql-server.
Importe las claves de GPG del repositorio público:
wget -qO- https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -Registre el repositorio de Ubuntu de Microsoft SQL Server para SQL Server 2019:
Para Ubuntu 16.04:
sudo add-apt-repository "$(wget -qO- https://packages.microsoft.com/config/ubuntu/16.04/mssql-server-2019.list)"Para Ubuntu 18.04:
sudo add-apt-repository "$(wget -qO- https://packages.microsoft.com/config/ubuntu/18.04/mssql-server-2019.list)"Para Ubuntu 20.04:
sudo add-apt-repository "$(wget -qO- https://packages.microsoft.com/config/ubuntu/20.04/mssql-server-2019.list)"Ejecute los comandos siguientes para instalar SQL Server:
sudo apt-get update sudo apt-get install -y mssql-serverCuando finalice la instalación del paquete, ejecute mssql-conf setup y siga las indicaciones para establecer la contraseña de administrador del sistema y elegir la edición.
sudo /opt/mssql/bin/mssql-conf setupNota
Asegúrese de especificar una contraseña segura para la cuenta del administrador del sistema (longitud mínima de 8 caracteres, incluidas mayúsculas y minúsculas, dígitos en base 10 o símbolos no alfanuméricos).
Cuando finalice la configuración, compruebe que el servicio se esté ejecutando:
systemctl status mssql-server --no-pagerSi planea conectarse de forma remota, es posible que también tenga que abrir el puerto TCP de SQL Server (valor predeterminado: 1433) en el firewall.
En este momento, SQL Server 2019 se está ejecutando en el equipo Ubuntu y está listo para usarse.
Instalar las herramientas de línea de comandos de SQL Server
Para crear una base de datos, necesita conectarse con una herramienta que pueda ejecutar instrucciones Transact-SQL en SQL Server. En los pasos siguientes, se instalan las herramientas de línea de comandos de SQL Server sqlcmd y bcp.
Siga estos pasos para instalar mssql-tools en Ubuntu.
Nota
De forma predeterminada, curl no está instalado en Ubuntu. Para instalar curl, ejecute este código:
sudo apt-get update
sudo apt install curl
Importe las claves de GPG del repositorio público.
curl https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -Registre el repositorio de Ubuntu de Microsoft.
Para Ubuntu 16.04:
curl https://packages.microsoft.com/config/ubuntu/16.04/prod.list | sudo tee /etc/apt/sources.list.d/msprod.listPara Ubuntu 18.04:
curl https://packages.microsoft.com/config/ubuntu/18.04/prod.list | sudo tee /etc/apt/sources.list.d/msprod.listPara Ubuntu 20.04:
curl https://packages.microsoft.com/config/ubuntu/20.04/prod.list | sudo tee /etc/apt/sources.list.d/msprod.listActualice la lista de orígenes y ejecute el comando de instalación con el paquete para desarrolladores de unixODBC. Para más información, consulte Instalación de Microsoft ODBC Driver for SQL Server (Linux).
sudo apt-get update sudo apt-get install mssql-tools unixodbc-devNota
Para actualizar a la versión más reciente de mssql-tools, ejecute los siguientes comandos:
sudo apt-get update sudo apt-get install mssql-toolsOpcional: agregue
/opt/mssql-tools/bin/a la variable de entorno PATH en un shell de Bash.Para que sqlcmd/bcp sea accesible desde el shell de Bash para inicios de sesión, modifique la variable PATH en el archivo ~/.bash_profile con el comando siguiente:
echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bash_profilePara que sqlcmd/bcp sea accesible desde el shell de Bash para sesiones interactivas o que no sean de inicio de sesión, modifique la variable PATH en el archivo ~/.bashrc con el comando siguiente:
echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrc source ~/.bashrc
Conexión local
En los pasos siguientes se usa sqlcmd para conectarse localmente a la nueva instancia de SQL Server.
Ejecute sqlcmd con parámetros para el nombre de SQL Server (-S), el nombre de usuario (-U) y la contraseña (-P). En este tutorial se conecta de forma local, por lo que el nombre del servidor es
localhost. El nombre de usuario esSAy la contraseña es la que proporcionó para la cuenta SA durante la configuración.sqlcmd -S localhost -U SA -P '<YourPassword>'Sugerencia
Puede omitir la contraseña en la línea de comandos para que se le solicite escribirla.
Sugerencia
Si más adelante decide conectarse de forma remota, especifique el nombre de la máquina o la dirección IP del parámetro -S y asegúrese de que el puerto 1433 esté abierto en el firewall.
Si se realiza correctamente, debe ver un símbolo de sistema de sqlcmd:
1>.Si recibe un error de conexión, intente primero diagnosticar el problema a partir del mensaje de error. Luego revise las recomendaciones para solucionar problemas de conexión.
Creación y consulta de datos
Las secciones siguientes le guían en el uso de sqlcmd para crear una base de datos, agregar datos y ejecutar una consulta simple.
Creación de una base de datos
En los pasos siguientes se crea una base de datos denominada TestDB.
En el símbolo del sistema de sqlcmd, pegue el comando Transact-SQL siguiente para crear una base de datos de prueba:
CREATE DATABASE TestDBEn la línea siguiente, escriba una consulta para devolver el nombre de todas las bases de datos del servidor:
SELECT Name from sys.DatabasesLos dos comandos anteriores no se ejecutaron de inmediato. Debe escribir
GOen una línea nueva para ejecutar los comandos anteriores:GO
Sugerencia
Para más información sobre cómo escribir consultas e instrucciones Transact-SQL, vea Tutorial: Escribir instrucciones Transact-SQL.
Insertar datos
Luego cree una tabla, Inventory, e inserte dos filas nuevas.
En el símbolo del sistema de sqlcmd, cambie el contexto a la nueva base de datos
TestDB:USE TestDBCree una tabla llamada
Inventory:CREATE TABLE Inventory (id INT, name NVARCHAR(50), quantity INT)Inserte datos en la nueva tabla:
INSERT INTO Inventory VALUES (1, 'banana', 150); INSERT INTO Inventory VALUES (2, 'orange', 154);Escriba
GOpara ejecutar los comandos anteriores:GO
Selección de datos
Ahora ejecute una consulta para devolver datos desde la tabla Inventory.
En el símbolo del sistema sqlcmd, escriba una consulta que devuelva filas desde la tabla
Inventorydonde la cantidad sea mayor que 152:SELECT * FROM Inventory WHERE quantity > 152;Ejecute el comando:
GO
Salida del símbolo del sistema de sqlcmd
Para finalizar la sesión de sqlcmd, escriba QUIT:
QUIT
Procedimientos recomendados de rendimiento
Después de instalar SQL Server en Linux, revise los procedimientos recomendados para configurar Linux y SQL Server con el fin de mejorar el rendimiento de los escenarios de producción. Para obtener más información, consulte Procedimientos recomendados e instrucciones de configuración de SQL Server en Linux.
Herramientas de datos multiplataforma
Además de sqlcmd, puede usar las siguientes herramientas multiplataforma para administrar SQL Server:
| Herramienta | Descripción |
|---|---|
| Azure Data Studio | Una utilidad de administración de bases de datos GUI multiplataforma. |
| Visual Studio Code | Un editor de código GUI multiplataforma que ejecuta instrucciones Transact-SQL con la extensión mssql. |
| PowerShell Core | Una herramienta de configuración y automatización multiplataforma basada en cmdlets. |
| mssql-cli | Una interfaz de línea de comandos multiplataforma para ejecutar comandos Transact-SQL. |
Conexión desde Windows
Las herramientas de SQL Server en Windows se conectan a instancias de SQL Server en Linux del mismo modo en que se conectarían a cualquier instancia remota de SQL Server.
Si tiene una máquina Windows que se puede conectar a la máquina Linux, pruebe con los mismos pasos de este tema desde un símbolo del sistema Windows mediante la ejecución de sqlcmd. Simplemente compruebe que usa el nombre o la dirección IP de la máquina Linux de destino en lugar del host local y asegúrese de que el puerto TCP 1433 esté abierto. Si tiene problemas para conectarse desde Windows, consulte las recomendaciones para solucionar problemas de conexión.
Para las otras herramientas que se ejecutan en Windows pero se conectan a SQL Server en Linux, consulte:
Otros escenarios de implementación
Para otros escenarios de instalación, vea los siguientes recursos:
- Actualización: Obtenga información sobre cómo actualizar una instalación existente de SQL Server en Linux
- Uninstall. Desinstalación de SQL Server en Linux
- Instalación desatendida: Obtenga información sobre cómo crear un script para la instalación sin pedir confirmación
- Instalación sin conexión: Obtenga información sobre cómo descargar manualmente los paquetes de instalación sin conexión
Sugerencia
Para obtener respuesta a las preguntas más frecuentes, vea Preguntas más frecuentes sobre SQL Server en Linux.