Compartir a través de


Inicio rápido: Instalación de SQL Server y creación de una base de datos en Ubuntu

Se aplica a:SQL Server - Linux

En este inicio rápido, instalará SQL Server 2017 (14.x) en Ubuntu 18.04. Después, se podrá conectar con sqlcmd para crear la primera base de datos y ejecutar consultas.

Para obtener más información sobre las plataformas admitidas, consulte Notas de la versión de SQL Server 2017 en Linux.

En este inicio rápido, instalará SQL Server 2019 (15.x) en Ubuntu 20.04. Después, se podrá conectar con sqlcmd para crear la primera base de datos y ejecutar consultas.

Para obtener más información sobre las plataformas admitidas, consulte Notas de la versión de SQL Server 2019 en Linux.

En este inicio rápido, instalará SQL Server 2022 (16.x) en Ubuntu 20.04 o 22.04. Después, se podrá conectar con sqlcmd para crear la primera base de datos y ejecutar consultas.

Para obtener más información sobre las plataformas admitidas, consulte Notas de la versión de SQL Server 2022 en Linux.

En este inicio rápido, instalará la versión preliminar de SQL Server 2025 (17.x) en Ubuntu 22.04. Después, se podrá conectar con sqlcmd para crear la primera base de datos y ejecutar consultas.

Para obtener más información sobre las plataformas compatibles, consulte Notas de la versión preliminar de SQL Server 2025 en Linux.

Sugerencia

Este tutorial necesita la intervención del usuario y una conexión a Internet. Para obtener más información sobre los procedimientos de instalación desatendida o sin conexión, vea la Guía de instalación para SQL Server en Linux.

Si decide tener una máquina virtual (VM) de SQL Server preinstalada en Ubuntu lista para ejecutar la carga de trabajo basada en producción, siga los procedimientos recomendados para crear la máquina virtual de SQL Server.

Imágenes de Azure Marketplace

Puede crear la máquina virtual en función de una de las dos imágenes siguientes Azure Marketplace:

Al usar estas imágenes, evita el paso de instalación y puede configurar directamente la instancia proporcionando la SKU y la sa contraseña necesarias para empezar a trabajar con SQL Server. SQL Server máquinas virtuales de Azure implementadas en Ubuntu Pro mediante las imágenes de Marketplace anteriores, son totalmente compatibles con Microsoft y Canonical.

Puede configurar SQL Server en Linux con mssql-conf mediante el siguiente comando:

sudo /opt/mssql/bin/mssql-conf setup

Imagen de Azure Marketplace

Puede crear la máquina virtual en la imagen siguiente de Azure Marketplace: Ubuntu 20.04.

Al usar esta imagen, evita el paso de instalación y puede configurar directamente la instancia proporcionando la SKU y la contraseña sa necesarias para empezar a trabajar con SQL Server. SQL Server máquinas virtuales de Azure implementadas en Ubuntu Pro mediante las imágenes de Marketplace anteriores, son totalmente compatibles con Microsoft y Canonical.

Puede configurar SQL Server en Linux con mssql-conf mediante el siguiente comando:

sudo /opt/mssql/bin/mssql-conf setup

Precaución

La contraseña debe seguir la directiva de contraseña predeterminada de SQL Server. De forma predeterminada, la contraseña debe tener al menos ocho caracteres y contener caracteres de tres de los siguientes cuatro conjuntos: mayúsculas, minúsculas, dígitos en base 10 y símbolos. Las contraseñas pueden tener hasta 128 caracteres. Use contraseñas lo más largas y complejas posible.

Requisitos previos

Debe tener un equipo Ubuntu 18.04 con al menos 2 GB de memoria.

Para instalar Ubuntu 18.04 en un equipo propio, vaya a https://releases.ubuntu.com/18.04/. También puede crear máquinas virtuales de Ubuntu en Azure. Vea el Tutorial: Creación y administración de máquinas virtuales Linux con la CLI de Azure.

Debe tener un equipo Ubuntu 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. Vea el Tutorial: Creación y administración de máquinas virtuales Linux con la CLI de Azure.

Debe tener un equipo Ubuntu 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. Vea el Tutorial: Creación y administración de máquinas virtuales Linux con la CLI de Azure.

Debe tener una máquina Ubuntu 22.04 con al menos 2 GB de memoria.

Para instalar Ubuntu 22.04 en su propio equipo, vaya a https://releases.ubuntu.com/22.04/. También puede crear máquinas virtuales de Ubuntu en Azure. Vea el Tutorial: Creación y administración de máquinas virtuales Linux con la CLI de Azure.

Si anteriormente instaló una versión Community Technology Preview (CTP) o candidata para lanzamiento (RC) de SQL Server, primero debe quitar el repositorio anterior para seguir estos pasos. Para más información, consulte Configuración de repositorios para instalar y actualizar SQL Server en Linux.

El Subsistema de Windows para Linux no se admite como destino de instalación para SQL Server.

Para conocer otros requisitos del sistema, vea Requisitos del sistema para SQL Server en Linux.

Instalar SQL Server

Para configurar SQL Server en Ubuntu, ejecute los siguientes comandos en un terminal para instalar el paquete mssql-server.

  1. Importe las claves de GPG del repositorio público:

    curl https://packages.microsoft.com/keys/microsoft.asc | sudo tee /etc/apt/trusted.gpg.d/microsoft.asc
    
  2. Registre el repositorio de Ubuntu de SQL Server:

    sudo add-apt-repository "$(wget -qO- https://packages.microsoft.com/config/ubuntu/18.04/mssql-server-2017.list)"
    

    Sugerencia

    Si desea instalar una versión diferente de SQL Server, consulte las versiones preliminares de SQL Server 2019 (15.x),SQL Server 2022 (16.x) o SQL Server 2025 (17.x).

  3. Ejecute los comandos siguientes para instalar SQL Server:

    sudo apt-get update
    sudo apt-get install -y mssql-server
    
  4. Cuando finalice la instalación del paquete, ejecute mssql-conf setup y siga las indicaciones para establecer la contraseña sa y elegir la edición. Como recordatorio, las siguientes ediciones de SQL Server tienen licencia gratuita: Evaluation, Developer y Express.

    sudo /opt/mssql/bin/mssql-conf setup
    

    Precaución

    La contraseña debe seguir la directiva de contraseña predeterminada de SQL Server. De forma predeterminada, la contraseña debe tener al menos ocho caracteres y contener caracteres de tres de los siguientes cuatro conjuntos: mayúsculas, minúsculas, dígitos en base 10 y símbolos. Las contraseñas pueden tener hasta 128 caracteres. Use contraseñas lo más largas y complejas posible.

  5. Cuando finalice la configuración, compruebe que el servicio se esté ejecutando:

    systemctl status mssql-server --no-pager
    
  6. Si 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.

  1. Importe las claves de GPG del repositorio público:

    curl https://packages.microsoft.com/keys/microsoft.asc | sudo tee /etc/apt/trusted.gpg.d/microsoft.asc
    
  2. Registre el repositorio de Ubuntu de SQL Server:

    sudo add-apt-repository "$(wget -qO- https://packages.microsoft.com/config/ubuntu/20.04/mssql-server-2019.list)"
    

    Sugerencia

    Si desea instalar una versión diferente de SQL Server, consulte las versiones preliminares de SQL Server 2017 (14.x),SQL Server 2022 (16.x) o SQL Server 2025 (17.x).

  3. Ejecute los comandos siguientes para instalar SQL Server:

    sudo apt-get update
    sudo apt-get install -y mssql-server
    
  4. Cuando finalice la instalación del paquete, ejecute mssql-conf setup y siga las indicaciones para establecer la contraseña sa y elegir la edición. Como recordatorio, las siguientes ediciones de SQL Server tienen licencia gratuita: Evaluation, Developer y Express.

    sudo /opt/mssql/bin/mssql-conf setup
    

    Precaución

    La contraseña debe seguir la directiva de contraseña predeterminada de SQL Server. De forma predeterminada, la contraseña debe tener al menos ocho caracteres y contener caracteres de tres de los siguientes cuatro conjuntos: mayúsculas, minúsculas, dígitos en base 10 y símbolos. Las contraseñas pueden tener hasta 128 caracteres. Use contraseñas lo más largas y complejas posible.

  5. Cuando finalice la configuración, compruebe que el servicio se esté ejecutando:

    systemctl status mssql-server --no-pager
    
  6. Si 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.

  1. Importe las claves de GPG del repositorio público:

    curl https://packages.microsoft.com/keys/microsoft.asc | sudo tee /etc/apt/trusted.gpg.d/microsoft.asc
    
  2. Registre el repositorio de Ubuntu de SQL Server:

    sudo add-apt-repository "$(wget -qO- https://packages.microsoft.com/config/ubuntu/20.04/mssql-server-2022.list)"
    

    Sugerencia

    Si desea instalar una versión diferente de SQL Server, consulte las versiones preliminares de SQL Server 2017 (14.x),SQL Server 2019 (15.x) o SQL Server 2025 (17.x).

  3. Ejecute los comandos siguientes para instalar SQL Server:

    sudo apt-get update
    sudo apt-get install -y mssql-server
    
  4. Cuando finalice la instalación del paquete, ejecute mssql-conf setup y siga las indicaciones para establecer la contraseña sa y elegir la edición. Como recordatorio, las siguientes ediciones de SQL Server tienen licencia gratuita: Evaluation, Developer y Express.

    sudo /opt/mssql/bin/mssql-conf setup
    

    Precaución

    La contraseña debe seguir la directiva de contraseña predeterminada de SQL Server. De forma predeterminada, la contraseña debe tener al menos ocho caracteres y contener caracteres de tres de los siguientes cuatro conjuntos: mayúsculas, minúsculas, dígitos en base 10 y símbolos. Las contraseñas pueden tener hasta 128 caracteres. Use contraseñas lo más largas y complejas posible.

  5. Cuando finalice la configuración, compruebe que el servicio se esté ejecutando:

    systemctl status mssql-server --no-pager
    
  6. Si 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.

  1. Descargue la clave pública, convierta de ASCII al formato GPG y escríbala en la ubicación necesaria:

    curl -fsSL https://packages.microsoft.com/keys/microsoft.asc | sudo gpg --dearmor -o /usr/share/keyrings/microsoft-prod.gpg
    

    Si recibe una advertencia que indica que la clave pública no está disponible, puede usar el siguiente comando en su lugar:

    curl https://packages.microsoft.com/keys/microsoft.asc | sudo tee /etc/apt/trusted.gpg.d/microsoft.asc
    
  2. Descargue y registre de forma manual el repositorio de Ubuntu de SQL Server:

    curl -fsSL https://packages.microsoft.com/config/ubuntu/22.04/mssql-server-preview.list | sudo tee /etc/apt/sources.list.d/mssql-server-preview.list
    

    Sugerencia

    Si desea instalar una versión diferente de SQL Server, consulte las versiones de SQL Server 2017 (14.x),SQL Server 2019 (15.x) o SQL Server 2022 (16.x) de este artículo.

  3. Ejecute los comandos siguientes para instalar SQL Server:

    sudo apt-get update
    sudo apt-get install -y mssql-server
    
  4. Cuando finalice la instalación del paquete, ejecute mssql-conf setup y siga las indicaciones para establecer la contraseña sa y elegir la edición. Como recordatorio, las siguientes ediciones de SQL Server tienen licencia gratuita: Evaluation, Developer y Express.

    sudo /opt/mssql/bin/mssql-conf setup
    

    Precaución

    La contraseña debe seguir la directiva de contraseña predeterminada de SQL Server. De forma predeterminada, la contraseña debe tener al menos ocho caracteres y contener caracteres de tres de los siguientes cuatro conjuntos: mayúsculas, minúsculas, dígitos en base 10 y símbolos. Las contraseñas pueden tener hasta 128 caracteres. Use contraseñas lo más largas y complejas posible.

  5. Cuando finalice la configuración, compruebe que el servicio se esté ejecutando:

    systemctl status mssql-server --no-pager
    
  6. Si 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.

Deshabilitar la cuenta de SA como procedimiento recomendado

Cuando se conecta a la instancia de SQL Server mediante la cuenta de administrador del sistema (sa) por primera vez después de la instalación, es importante que siga estos pasos y a continuación, deshabilite inmediatamente la cuenta sa como procedimiento recomendado de seguridad.

  1. Cree un nuevo inicio de sesión y conviértalo en miembro del rol del servidor sysadmin.

  2. Conectar a la instancia de SQL Server mediante el nuevo inicio de sesión que creó.

  3. Deshabilite la cuenta sa, como se recomienda para el procedimiento recomendado de seguridad.

Instalación de 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: utilidad de sqlcmd y utilidad de bcp.

Siga estos pasos para instalar mssql-tools18 en Ubuntu.

  1. Importe las claves de GPG del repositorio público.

    curl https://packages.microsoft.com/keys/microsoft.asc | sudo tee /etc/apt/trusted.gpg.d/microsoft.asc
    
  2. Registre el repositorio de Ubuntu de Microsoft.

    • Para Ubuntu 22.04, utilice el siguiente comando:

      curl https://packages.microsoft.com/config/ubuntu/22.04/prod.list | sudo tee /etc/apt/sources.list.d/mssql-release.list
      
    • Para Ubuntu 20.04, utilice el siguiente comando:

      curl https://packages.microsoft.com/config/ubuntu/20.04/prod.list | sudo tee /etc/apt/sources.list.d/mssql-release.list
      
    • Para Ubuntu 18.04, utilice el siguiente comando:

      curl https://packages.microsoft.com/config/ubuntu/18.04/prod.list | sudo tee /etc/apt/sources.list.d/mssql-release.list
      
    • Para Ubuntu 16.04, utilice el siguiente comando:

      curl https://packages.microsoft.com/config/ubuntu/16.04/prod.list | sudo tee /etc/apt/sources.list.d/mssql-release.list
      
  3. Actualice la lista de orígenes y ejecute el comando de instalación con el paquete para desarrolladores de unixODBC.

    sudo apt-get update
    sudo apt-get install mssql-tools18 unixodbc-dev
    

    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-tools18
    
  4. Opcional: agregue /opt/mssql-tools18/bin/ a la variable de entorno PATH en un shell de Bash.

    Para que sqlcmd y bcp sean accesibles 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-tools18/bin"' >> ~/.bash_profile
    source ~/.bash_profile
    

    Para que sqlcmd y bcp sea accesible desde el shell de Bash para sesiones interactivas o que no sean de inicio de sesión, modifique PATH en el archivo ~/.bashrc con el comando siguiente:

    echo 'export PATH="$PATH:/opt/mssql-tools18/bin"' >> ~/.bashrc
    source ~/.bashrc
    

Conexión local

En los pasos siguientes se usa sqlcmd para conectarse localmente a la nueva instancia de SQL Server.

Precaución

La contraseña debe seguir la directiva de contraseña predeterminada de SQL Server. De forma predeterminada, la contraseña debe tener al menos ocho caracteres y contener caracteres de tres de los siguientes cuatro conjuntos: mayúsculas, minúsculas, dígitos en base 10 y símbolos. Las contraseñas pueden tener hasta 128 caracteres. Use contraseñas lo más largas y complejas posible.

  1. 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 localmente, por lo que el nombre del servidor es localhost. El nombre de usuario es sa y la contraseña es la que proporcionó para la cuenta de sa durante la instalación.

    sqlcmd -S localhost -U sa -P '<password>'
    

    Nota:

    Las versiones más recientes de sqlcmd están protegidas de manera predeterminada. Para obtener más información sobre el cifrado de conexión, consulte Utilidad de sqlcmd para Windows y Conexión con sqlcmd para Linux y macOS. Si la conexión no se realiza correctamente, puede agregar la opción -No a sqlcmd para especificar que el cifrado es opcional, no obligatorio.

    Puede omitir la contraseña en la línea de comandos para que se le solicite escribirla.

    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.

  2. Si se realiza correctamente, debe ver un símbolo de sistema de sqlcmd: 1>.

  3. 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.

Para obtener más información sobre cómo escribir instrucciones y consultas de Transact-SQL, consulte Tutorial: Escritura de instrucciones Transact-SQL.

Creación de una base de datos

En los pasos siguientes se crea una base de datos denominada TestDB.

  1. En el símbolo del sistema de sqlcmd, pegue el comando Transact-SQL siguiente para crear una base de datos de prueba:

    CREATE DATABASE TestDB;
    
  2. En la línea siguiente, escriba una consulta para devolver el nombre de todas las bases de datos del servidor:

    SELECT Name
    FROM sys.databases;
    
  3. Los dos comandos anteriores no se ejecutan inmediatamente. Debe escribir GO en una línea nueva para ejecutar los comandos anteriores:

    GO
    

Insertar datos

Luego cree una tabla, dbo.Inventory, e inserte dos filas nuevas.

  1. En el símbolo del sistema de sqlcmd, cambie el contexto a la nueva base de datos TestDB:

    USE TestDB;
    
  2. Cree una tabla llamada dbo.Inventory:

    CREATE TABLE dbo.Inventory
    (
        id INT,
        name NVARCHAR (50),
        quantity INT,
        PRIMARY KEY (id)
    );
    
  3. Inserte datos en la nueva tabla:

    INSERT INTO dbo.Inventory
    VALUES (1, 'banana', 150);
    
    INSERT INTO dbo.Inventory
    VALUES (2, 'orange', 154);
    
  4. Escriba GO para ejecutar los comandos anteriores:

    GO
    

Selección de datos

Ahora ejecute una consulta para devolver datos desde la tabla dbo.Inventory.

  1. En el símbolo del sistema sqlcmd, escriba una consulta que devuelva filas desde la tabla dbo.Inventory donde la cantidad sea mayor que 152:

    SELECT *
    FROM dbo.Inventory
    WHERE quantity > 152;
    
  2. 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. Debe usar el nombre o la dirección IP de la máquina Linux de destino en lugar de localhost y asegurarse de que el puerto TCP 1433 esté abierto en la máquina con SQL Server. 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

Para obtener respuesta a las preguntas más frecuentes, vea Preguntas más frecuentes sobre SQL Server en Linux.

Contribuya a la documentación de SQL

¿Sabía que puede editar el contenido de SQL usted mismo? Si lo hace, no solo contribuirá a mejorar la documentación, sino que también se le reconocerá como colaborador de la página.

Para obtener más información, consulte Editar documentación de Microsoft Learn.