Inicio rápido: instalar SQL Server y crear una base de datos en Red HatQuickstart: Install SQL Server and create a database on Red Hat

Se aplica a:Applies to: síSQL ServerSQL Server (todas las versiones admitidas) yesSQL ServerSQL Server (all supported versions) : LinuxSe aplica a:Applies to: síSQL ServerSQL Server (todas las versiones admitidas) yesSQL ServerSQL Server (all supported versions) - Linux

En este inicio rápido, instalará SQL Server 2017 o SQL Server 2019 en Red Hat Enterprise Linux (RHEL).In this quickstart, you install SQL Server 2017 or SQL Server 2019 on Red Hat Enterprise Linux (RHEL). Después, se conectará con sqlcmd para crear la primera base de datos y ejecutar consultas.You then connect with sqlcmd to create your first database and run queries.

En este inicio rápido, instalará SQL Server 2019 en Red Hat Enterprise Linux (RHEL) 8.In this quickstart, you install SQL Server 2019 on Red Hat Enterprise Linux (RHEL) 8. Después, se conectará con sqlcmd para crear la primera base de datos y ejecutar consultas.You then connect with sqlcmd to create your first database and run queries.

Sugerencia

Este tutorial necesita la intervención del usuario y una conexión a Internet.This tutorial requires user input and an internet connection. 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.If you are interested in the unattended or offline installation procedures, see Installation guidance for SQL Server on Linux.

Requisitos previosPrerequisites

Necesita una máquina con RHEL 7.3-7.8 u 8.0-8.2, con un mínimo de 2 GB de memoria.You must have a RHEL 7.3 - 7.8, or 8.0 - 8.2 machine with at least 2 GB of memory.

Necesita una máquina con RHEL 7.3, 7.4, 7.5, 7.6 u 8.0, con un mínimo de 2 GB de memoria.You must have a RHEL 7.3, 7.4, 7.5, 7.6, or 8.0 machine with at least 2 GB of memory.

Para instalar Red Hat Enterprise Linux en su propio equipo, vaya a https://access.redhat.com/products/red-hat-enterprise-linux/evaluation.To install Red Hat Enterprise Linux on your own machine, go to https://access.redhat.com/products/red-hat-enterprise-linux/evaluation. También puede crear máquinas virtuales con RHEL en Azure.You can also create RHEL virtual machines in Azure. Vea Creación y administración de máquinas virtuales Linux con la CLI de Azure y use --image RHEL en la llamada a az vm create.See Create and Manage Linux VMs with the Azure CLI, and use --image RHEL in the call to az vm create.

Si anteriormente ha instalado una versión CTP o RC de SQL Server, primero debe quitar el repositorio anterior para seguir estos pasos.If you have previously installed a CTP or RC release of SQL Server, you must first remove the old repository before following these steps. Para obtener más información, vea Configurar repositorios de Linux para SQL Server 2017 y 2019.For more information, see Configure Linux repositories for SQL Server 2017 and 2019.

Para conocer otros requisitos del sistema, vea Requisitos del sistema para SQL Server en Linux.For other system requirements, see System requirements for SQL Server on Linux.

Instalar SQL ServerInstall SQL Server

Nota

RHEL 8 es compatible con SQL Server 2017 a partir de CU20.RHEL 8 is supported for SQL Server 2017 starting with CU20. Los siguientes comandos para SQL Server 2017 apuntan al repositorio de RHEL 8.The following commands for SQL Server 2017 points to the RHEL 8 repository. RHEL 8 no viene preinstalado con python2. SQL Server requiere RHEL 8.RHEL 8 does not come preinstalled with python2, which is required by SQL Server. Antes de comenzar los pasos de instalación de SQL Server, ejecute el comando y compruebe que python2 está seleccionado como intérprete:Before you begin the SQL Server install steps, execute the command and verify that python2 is selected as the interpreter:

sudo alternatives --config python
# If not configured, install python2 and openssl10 using the following commands: 
sudo yum install python2
sudo yum install compat-openssl10
# Configure python2 as the default interpreter using this command: 
sudo alternatives --config python

Para obtener más información, vea el siguiente blog sobre la instalación de python2 y su configuración como intérprete predeterminado: https://www.redhat.com/en/blog/installing-microsoft-sql-server-red-hat-enterprise-linux-8-beta.For more information, see the following blog on installing python2 and configuring it as the default interpreter: https://www.redhat.com/en/blog/installing-microsoft-sql-server-red-hat-enterprise-linux-8-beta.

Si usa RHEL 7, cambie la ruta de acceso siguiente a /rhel/7 en lugar de /rhel/8.If you are using RHEL 7, change the path below to /rhel/7 instead of /rhel/8.

Para configurar SQL Server en RHEL, ejecute los comandos siguientes en un terminal para instalar el paquete mssql-server:To configure SQL Server on RHEL, run the following commands in a terminal to install the mssql-server package:

  1. Descargue el archivo de configuración del repositorio de Red Hat de Microsoft SQL Server 2017:Download the Microsoft SQL Server 2017 Red Hat repository configuration file:

    sudo curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/8/mssql-server-2017.repo
    

    Sugerencia

    Si quiere instalar SQL Server 2019, debe registrar en su lugar el repositorio de SQL Server 2019.If you want to install SQL Server 2019 , you must instead register the SQL Server 2019 repository. Use el comando siguiente para las instalaciones de SQL Server 2019:Use the following command for SQL Server 2019 installations:

    sudo curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/8/mssql-server-2019.repo
    
  2. Ejecute los comandos siguientes para instalar SQL Server:Run the following commands to install SQL Server:

    sudo yum install -y mssql-server
    
  3. Cuando 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.After the package installation finishes, run mssql-conf setup and follow the prompts to set the SA password and choose your edition.

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

    Sugerencia

    Las siguientes ediciones de SQL Server 2017 tienen licencia gratuita: Evaluation, Developer y Express.The following SQL Server 2017 editions are freely licensed: Evaluation, Developer, and 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).Make sure to specify a strong password for the SA account (Minimum length 8 characters, including uppercase and lowercase letters, base 10 digits and/or non-alphanumeric symbols).

  4. Cuando finalice la configuración, compruebe que el servicio se esté ejecutando:Once the configuration is done, verify that the service is running:

    systemctl status mssql-server
    
  5. Para permitir las conexiones remotas, abra el puerto de SQL Server en el firewall en RHEL.To allow remote connections, open the SQL Server port on the firewall on RHEL. El puerto de SQL Server predeterminado es TCP 1433.The default SQL Server port is TCP 1433. Si usa FirewallD para el firewall, puede usar los comandos siguientes:If you are using FirewallD for your firewall, you can use the following commands:

    sudo firewall-cmd --zone=public --add-port=1433/tcp --permanent
    sudo firewall-cmd --reload
    

En este momento, SQL Server se ejecuta en el equipo con RHEL y está listo para usarse.At this point, SQL Server is running on your RHEL machine and is ready to use!

Instalar SQL ServerInstall SQL Server

Nota

Los siguientes comandos para SQL Server 2019 apunta al repositorio de RHEL 8.The following commands for SQL Server 2019 points to the RHEL 8 repository. RHEL 8 no viene preinstalado con python2. SQL Server requiere RHEL 8.RHEL 8 does not come preinstalled with python2, which is required by SQL Server. Antes de comenzar los pasos de instalación de SQL Server, ejecute el comando y compruebe que python2 está seleccionado como intérprete:Before you begin the SQL Server install steps, execute the command and verify that python2 is selected as the interpreter:

sudo alternatives --config python
# If not configured, install python2 and openssl10 using the following commands: 
sudo yum install python2
sudo yum install compat-openssl10
# Configure python2 as the default interpreter using this command: 
sudo alternatives --config python

Para obtener más información sobre estos pasos, vea el siguiente blog sobre cómo instalar python2 y cómo configurarlo como intérprete predeterminado: https://www.redhat.com/en/blog/installing-microsoft-sql-server-red-hat-enterprise-linux-8-beta.For more information about these steps, see the following blog on installing python2 and configuring it as the default interpreter: https://www.redhat.com/en/blog/installing-microsoft-sql-server-red-hat-enterprise-linux-8-beta.

Si usa RHEL 7, cambie la ruta de acceso siguiente a /rhel/7 en lugar de /rhel/8.If you are using RHEL 7, change the path below to /rhel/7 instead of /rhel/8.

Para configurar SQL Server en RHEL, ejecute los comandos siguientes en un terminal para instalar el paquete mssql-server:To configure SQL Server on RHEL, run the following commands in a terminal to install the mssql-server package:

  1. Descargue el archivo de configuración del repositorio de Red Hat de Microsoft SQL Server 2019:Download the Microsoft SQL Server 2019 Red Hat repository configuration file:

    sudo curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/8/mssql-server-2019.repo
    
  2. Ejecute los comandos siguientes para instalar SQL Server:Run the following commands to install SQL Server:

    sudo yum install -y mssql-server
    
  3. Cuando 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.After the package installation finishes, run mssql-conf setup and follow the prompts to set the SA password and choose your edition.

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

    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).Make sure to specify a strong password for the SA account (Minimum length 8 characters, including uppercase and lowercase letters, base 10 digits and/or non-alphanumeric symbols).

  4. Cuando finalice la configuración, compruebe que el servicio se esté ejecutando:Once the configuration is done, verify that the service is running:

    systemctl status mssql-server
    
  5. Para permitir las conexiones remotas, abra el puerto de SQL Server en el firewall en RHEL.To allow remote connections, open the SQL Server port on the firewall on RHEL. El puerto de SQL Server predeterminado es TCP 1433.The default SQL Server port is TCP 1433. Si usa FirewallD para el firewall, puede usar los comandos siguientes:If you are using FirewallD for your firewall, you can use the following commands:

    sudo firewall-cmd --zone=public --add-port=1433/tcp --permanent
    sudo firewall-cmd --reload
    

En este momento, SQL Server 2019 se ejecuta en el equipo con RHEL y está listo para usarse.At this point, SQL Server 2019 is running on your RHEL machine and is ready to use!

Instalar las herramientas de línea de comandos de SQL ServerInstall the SQL Server command-line tools

Para crear una base de datos, necesita conectarse con una herramienta que pueda ejecutar instrucciones Transact-SQL en SQL Server.To create a database, you need to connect with a tool that can run Transact-SQL statements on the SQL Server. En los pasos siguientes, se instalan las herramientas de línea de comandos de SQL Server sqlcmd y bcp.The following steps install the SQL Server command-line tools: sqlcmd and bcp.

  1. Descargue el archivo de configuración del repositorio de Red Hat de Microsoft.Download the Microsoft Red Hat repository configuration file.

    sudo curl -o /etc/yum.repos.d/msprod.repo https://packages.microsoft.com/config/rhel/8/prod.repo
    
  2. Si tiene instalada una versión anterior de mssql-tools, quite los paquetes unixODBC anteriores.If you had a previous version of mssql-tools installed, remove any older unixODBC packages.

    sudo yum remove unixODBC-utf16 unixODBC-utf16-devel
    
  3. Ejecute los comandos siguientes para instalar mssql-tools con el paquete de desarrollador de unixODBC.Run the following commands to install mssql-tools with the unixODBC developer package. Para más información, consulte Instalación de Microsoft ODBC Driver for SQL Server (Linux).For more information, see Install the Microsoft ODBC driver for SQL Server (Linux).

    sudo yum install -y mssql-tools unixODBC-devel
    
  4. Por comodidad, agregue /opt/mssql-tools/bin/ a la variable de entorno PATH.For convenience, add /opt/mssql-tools/bin/ to your PATH environment variable. De este modo, podrá ejecutar las herramientas sin especificar la ruta de acceso completa.This enables you to run the tools without specifying the full path. Ejecute los comandos siguientes para modificar la variable PATH, tanto para las sesiones de inicio de sesión como para las sesiones interactivas o sin inicio de sesión:Run the following commands to modify the PATH for both login sessions and interactive/non-login sessions:

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

Conexión localConnect locally

En los pasos siguientes se usa sqlcmd para conectarse localmente a la nueva instancia de SQL Server.The following steps use sqlcmd to locally connect to your new SQL Server instance.

  1. Ejecute sqlcmd con parámetros para el nombre de SQL Server (-S), el nombre de usuario (-U) y la contraseña (-P).Run sqlcmd with parameters for your SQL Server name (-S), the user name (-U), and the password (-P). En este tutorial se conecta de forma local, por lo que el nombre del servidor es localhost.In this tutorial, you are connecting locally, so the server name is localhost. El nombre de usuario es SA y la contraseña es la que proporcionó para la cuenta SA durante la configuración.The user name is SA and the password is the one you provided for the SA account during setup.

    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.You can omit the password on the command line to be prompted to enter it.

    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.If you later decide to connect remotely, specify the machine name or IP address for the -S parameter, and make sure port 1433 is open on your firewall.

  2. Si se realiza correctamente, debe ver un símbolo de sistema de sqlcmd: 1>.If successful, you should get to a sqlcmd command prompt: 1>.

  3. Si recibe un error de conexión, intente primero diagnosticar el problema a partir del mensaje de error.If you get a connection failure, first attempt to diagnose the problem from the error message. Luego revise las recomendaciones para solucionar problemas de conexión.Then review the connection troubleshooting recommendations.

Creación y consulta de datosCreate and query data

Las secciones siguientes le guían en el uso de sqlcmd para crear una base de datos, agregar datos y ejecutar una consulta simple.The following sections walk you through using sqlcmd to create a new database, add data, and run a simple query.

Creación de una base de datosCreate a new database

En los pasos siguientes se crea una base de datos denominada TestDB.The following steps create a new database named TestDB.

  1. En el símbolo del sistema de sqlcmd, pegue el comando Transact-SQL siguiente para crear una base de datos de prueba:From the sqlcmd command prompt, paste the following Transact-SQL command to create a test database:

    CREATE DATABASE TestDB
    
  2. En la línea siguiente, escriba una consulta para devolver el nombre de todas las bases de datos del servidor:On the next line, write a query to return the name of all of the databases on your server:

    SELECT Name from sys.Databases
    
  3. Los dos comandos anteriores no se ejecutaron de inmediato.The previous two commands were not executed immediately. Debe escribir GO en una línea nueva para ejecutar los comandos anteriores:You must type GO on a new line to execute the previous commands:

    GO
    

Sugerencia

Para más información sobre cómo escribir consultas e instrucciones Transact-SQL, vea Tutorial: Escribir instrucciones Transact-SQL.To learn more about writing Transact-SQL statements and queries, see Tutorial: Writing Transact-SQL Statements.

Insertar datosInsert data

Luego cree una tabla, Inventory, e inserte dos filas nuevas.Next create a new table, Inventory, and insert two new rows.

  1. En el símbolo del sistema de sqlcmd, cambie el contexto a la nueva base de datos TestDB:From the sqlcmd command prompt, switch context to the new TestDB database:

    USE TestDB
    
  2. Cree una tabla llamada Inventory:Create new table named Inventory:

    CREATE TABLE Inventory (id INT, name NVARCHAR(50), quantity INT)
    
  3. Inserte datos en la nueva tabla:Insert data into the new table:

    INSERT INTO Inventory VALUES (1, 'banana', 150); INSERT INTO Inventory VALUES (2, 'orange', 154);
    
  4. Escriba GO para ejecutar los comandos anteriores:Type GO to execute the previous commands:

    GO
    

Selección de datosSelect data

Ahora ejecute una consulta para devolver datos desde la tabla Inventory.Now, run a query to return data from the Inventory table.

  1. En el símbolo del sistema sqlcmd, escriba una consulta que devuelva filas desde la tabla Inventory donde la cantidad sea mayor que 152:From the sqlcmd command prompt, enter a query that returns rows from the Inventory table where the quantity is greater than 152:

    SELECT * FROM Inventory WHERE quantity > 152;
    
  2. Ejecute el comando:Execute the command:

    GO
    

Salida del símbolo del sistema de sqlcmdExit the sqlcmd command prompt

Para finalizar la sesión de sqlcmd, escriba QUIT:To end your sqlcmd session, type QUIT:

QUIT

Procedimientos recomendados de rendimientoPerformance best practices

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.After installing SQL Server on Linux, review the best practices for configuring Linux and SQL Server to improve performance for production scenarios. Para obtener más información, consulte Procedimientos recomendados e instrucciones de configuración de SQL Server en Linux.For more information, see Performance best practices and configuration guidelines for SQL Server on Linux.

Herramientas de datos multiplataformaCross-platform data tools

Además de sqlcmd, puede usar las siguientes herramientas multiplataforma para administrar SQL Server:In addition to sqlcmd, you can use the following cross-platform tools to manage SQL Server:

HerramientaTool DescripciónDescription
Azure Data StudioAzure Data Studio Una utilidad de administración de bases de datos GUI multiplataforma.A cross-platform GUI database management utility.
Visual Studio CodeVisual Studio Code Un editor de código GUI multiplataforma que ejecuta instrucciones Transact-SQL con la extensión mssql.A cross-platform GUI code editor that run Transact-SQL statements with the mssql extension.
PowerShell CorePowerShell Core Una herramienta de configuración y automatización multiplataforma basada en cmdlets.A cross-platform automation and configuration tool based on cmdlets.
mssql-climssql-cli Una interfaz de línea de comandos multiplataforma para ejecutar comandos Transact-SQL.A cross-platform command-line interface for running Transact-SQL commands.

Conexión desde WindowsConnecting from 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.SQL Server tools on Windows connect to SQL Server instances on Linux in the same way they would connect to any remote SQL Server instance.

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.If you have a Windows machine that can connect to your Linux machine, try the same steps in this topic from a Windows command-prompt running 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.Just verify that you use the target Linux machine name or IP address rather than localhost, and make sure that TCP port 1433 is open. Si tiene problemas para conectarse desde Windows, consulte las recomendaciones para solucionar problemas de conexión.If you have any problems connecting from Windows, see connection troubleshooting recommendations.

Para las otras herramientas que se ejecutan en Windows pero se conectan a SQL Server en Linux, consulte:For other tools that run on Windows but connect to SQL Server on Linux, see:

Otros escenarios de implementaciónOther deployment scenarios

Para otros escenarios de instalación, vea los siguientes recursos:For other installation scenarios, see the following resources:

  • Actualización: Obtenga información sobre cómo actualizar una instalación existente de SQL Server en LinuxUpgrade: Learn how to upgrade an existing installation of SQL Server on Linux
  • Uninstall. Desinstalación de SQL Server en LinuxUninstall: Uninstall SQL Server on Linux
  • Instalación desatendida: Obtenga información sobre cómo crear un script para la instalación sin pedir confirmaciónUnattended install: Learn how to script the installation without prompts
  • Instalación sin conexión: Obtenga información sobre cómo descargar manualmente los paquetes de instalación sin conexiónOffline install: Learn how to manually download the packages for offline installation

Sugerencia

Para obtener respuesta a las preguntas más frecuentes, vea Preguntas más frecuentes sobre SQL Server en Linux.For answers to frequently asked questions, see the SQL Server on Linux FAQ.

Pasos siguientesNext steps