Eventos
31 mar, 23 - 2 abr, 23
Evento de aprendizaje de SQL, Fabric y Power BI más grande. 31 de marzo – 2 de abril. Use el código FABINSIDER para ahorrar $400.
Regístrate hoyEste explorador ya no se admite.
Actualice a Microsoft Edge para aprovechar las características y actualizaciones de seguridad más recientes, y disponer de soporte técnico.
Se aplica a: SQL Server - Linux
En este inicio rápido, instalará SQL Server 2017 (14.x) en Red Hat Enterprise Linux (RHEL) 8.x. 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 Red Hat Enterprise Linux (RHEL) 8.x. 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 Red Hat Enterprise Linux (RHEL) 8.x o 9.x. Después, se podrá conectar con sqlcmd para crear la primera base de datos y ejecutar consultas.
Para más información sobre las plataformas admitidas, consulte Notas de la versión de SQL Server 2022 (16.x) 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 VM de SQL Server preinstalada en RHEL que esté lista para ejecutar la carga de trabajo basada en producción, siga los procedimientos recomendados para crear la VM de SQL Server.
Puede crear la VM en función la imagen siguiente de Azure Marketplace:
Al usar esta imagen de Marketplace, puede evitar el paso de instalación y configurar directamente la instancia proporcionando la SKU y la contraseña sa
necesarias para empezar a trabajar con SQL Server. Las VM de Azure de SQL Server implementadas en RHEL mediante las imágenes de Marketplace anteriores, son totalmente compatibles con Microsoft y Red Hat.
Puede configurar SQL Server en Linux con mssql-conf mediante el siguiente comando:
sudo /opt/mssql/bin/mssql-conf setup
Necesita una máquina con RHEL 8.x, con un mínimo de 2 GB de memoria.
Para instalar Red Hat Enterprise Linux en su propio equipo, vaya a https://access.redhat.com/products/red-hat-enterprise-linux/evaluation. También puede crear máquinas virtuales con RHEL en 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
.
Si anteriormente ha instalado 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.
Para conocer otros requisitos del sistema, vea Requisitos del sistema para SQL Server en Linux.
Los siguientes comandos para la instalación de SQL Server apuntan al repositorio de RHEL 8. RHEL 8 no viene preinstalado con python2
, y se necesita para 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:
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.
Para configurar SQL Server en RHEL, ejecute los comandos siguientes en un terminal para instalar el paquete mssql-server
:
Descargue el archivo de configuración del repositorio de Red Hat de SQL Server 2017 (14.x).
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 otra versión de SQL Server, consulte las versiones de SQL Server 2019 (15.x) o SQL Server 2022 (16.x) de este artículo.
Ejecute el comando siguiente para instalar SQL Server:
sudo yum install -y mssql-server
Cuando finalice la instalación del paquete, ejecute mssql-conf setup
utilizando la ruta de acceso completa y siga las indicaciones para establecer la contraseña de administrador del sistema 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
Recuerde especificar una contraseña segura para la cuenta de Microsoft Software Assurance. Necesita una longitud mínima de 8 caracteres, incluidas letras mayúsculas y minúsculas, dígitos base-10 o símbolos no alfanuméricos.
Cuando finalice la configuración, compruebe que el servicio se esté ejecutando:
systemctl status mssql-server
Para permitir las conexiones remotas, abra el puerto de SQL Server en el firewall de RHEL. El puerto de SQL Server predeterminado es TCP 1433. Si usa FirewallD para el firewall, puede usar los comandos siguientes:
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.
Los siguientes comandos para la instalación de SQL Server apuntan al repositorio de RHEL 8. RHEL 8 no viene preinstalado con python2
, y se necesita para 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:
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.
Para configurar SQL Server en RHEL, ejecute los comandos siguientes en un terminal para instalar el paquete mssql-server
:
Descargue el archivo de configuración del repositorio de Red Hat de SQL Server 2019 (15.x):
sudo curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/8/mssql-server-2019.repo
Sugerencia
Si quiere instalar otra versión de SQL Server, consulte las versiones de SQL Server 2017 (14.x) o SQL Server 2022 (16.x) de este artículo.
Ejecute el comando siguiente para instalar SQL Server:
sudo yum install -y mssql-server
Cuando finalice la instalación del paquete, ejecute mssql-conf setup
utilizando la ruta de acceso completa y siga las indicaciones para establecer la contraseña de administrador del sistema 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
Recuerde especificar una contraseña segura para la cuenta de Microsoft Software Assurance. Necesita una longitud mínima de 8 caracteres, incluidas letras mayúsculas y minúsculas, dígitos base-10 o símbolos no alfanuméricos.
Cuando finalice la configuración, compruebe que el servicio se esté ejecutando:
systemctl status mssql-server
Para permitir las conexiones remotas, abra el puerto de SQL Server en el firewall de RHEL. El puerto de SQL Server predeterminado es TCP 1433. Si usa FirewallD para el firewall, puede usar los comandos siguientes:
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.
Los siguientes comandos para la instalación de SQL Server apuntan al repositorio de RHEL 8.
Para configurar SQL Server en RHEL, ejecute los comandos siguientes en un terminal para instalar el paquete mssql-server
:
Descargue el archivo de configuración del repositorio de Red Hat 8 de SQL Server 2022 (16.x):
sudo curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/8/mssql-server-2022.repo
Sugerencia
Si quiere instalar otra versión de SQL Server, consulte las versiones de SQL Server 2017 (14.x) o SQL Server 2019 (15.x) de este artículo.
Ejecute el comando siguiente para instalar SQL Server:
sudo yum install -y mssql-server
Cuando finalice la instalación del paquete, ejecute mssql-conf setup
utilizando la ruta de acceso completa y siga las indicaciones para establecer la contraseña de administrador del sistema 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
Recuerde especificar una contraseña segura para la cuenta de Microsoft Software Assurance. Necesita una longitud mínima de 8 caracteres, incluidas letras mayúsculas y minúsculas, dígitos base-10 o símbolos no alfanuméricos.
Cuando finalice la configuración, compruebe que el servicio se esté ejecutando:
systemctl status mssql-server
Para permitir las conexiones remotas, abra el puerto de SQL Server en el firewall de RHEL. El puerto de SQL Server predeterminado es TCP 1433. Si usa FirewallD para el firewall, puede usar los comandos siguientes:
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.
Cuando se conecta a la instancia de SQL Server mediante la cuenta sa
por primera vez después de la instalación, es importante que siga estos pasos y, a continuación, deshabilite inmediatamente el inicio de sesión sa
como procedimiento recomendado de seguridad.
Cree un nuevo inicio de sesión y conviértalo en miembro del rol del servidor sysadmin.
Dependiendo de si tiene un contenedor o una implementación que no es de contenedor, habilite autenticación de Windows y cree un nuevo inicio de sesión basado en Windows y agréguelo al rol del servidor sysadmin.
De lo contrario, cree un inicio de sesión mediante la autenticación de SQL Server y agréguelo al rol del servidor sysadmin.
Conectar a la instancia de SQL Server mediante el nuevo inicio de sesión que creó.
Deshabilite la cuenta sa
, como se recomienda para el procedimiento recomendado de seguridad.
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.
Use los pasos siguientes para instalar mssql-tools18 en Red Hat Enterprise Linux.
Descargue el archivo de configuración del repositorio de Red Hat de Microsoft.
Para Red Hat 9, usa el siguiente comando:
curl https://packages.microsoft.com/config/rhel/9/prod.repo | sudo tee /etc/yum.repos.d/mssql-release.repo
Para Red Hat 8, use el siguiente comando:
curl https://packages.microsoft.com/config/rhel/8/prod.repo | sudo tee /etc/yum.repos.d/mssql-release.repo
Para Red Hat 7, use el siguiente comando:
curl https://packages.microsoft.com/config/rhel/7/prod.repo | sudo tee /etc/yum.repos.d/mssql-release.repo
Si tiene instalada una versión anterior de mssql-tools, quite los paquetes unixODBC anteriores.
sudo yum remove mssql-tools unixODBC-utf16 unixODBC-utf16-devel
Ejecute los comandos siguientes para instalar mssql-tools18 con el paquete de desarrollador de unixODBC.
sudo yum install -y mssql-tools18 unixODBC-devel
Para actualizar a la versión más reciente de mssql-tools, ejecute los siguientes comandos:
sudo yum check-update
sudo yum update mssql-tools18
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
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 es sa
y la contraseña es la que proporcionó para la cuenta SA durante la configuración.
sqlcmd -S localhost -U sa -P '<YourPassword>'
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.
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.
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 consultas e instrucciones Transact-SQL, vea Tutorial: Escribir instrucciones Transact-SQL.
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 TestDB;
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;
Los dos comandos anteriores no se ejecutaron de inmediato. Debe escribir GO
en una línea nueva para ejecutar los comandos anteriores:
GO
Luego cree una tabla, dbo.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 TestDB;
Cree una tabla llamada dbo.Inventory
:
CREATE TABLE dbo.Inventory (
id INT,
name NVARCHAR(50),
quantity INT,
PRIMARY KEY (id)
);
Inserte datos en la nueva tabla:
INSERT INTO dbo.Inventory VALUES (1, 'banana', 150);
INSERT INTO dbo.Inventory VALUES (2, 'orange', 154);
Escriba GO
para ejecutar los comandos anteriores:
GO
Ahora ejecute una consulta para devolver datos desde la tabla dbo.Inventory
.
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;
Ejecute el comando:
GO
Para finalizar la sesión de sqlcmd, escriba QUIT
:
QUIT
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.
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. |
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:
Para otros escenarios de instalación, vea los siguientes recursos:
Para obtener respuesta a las preguntas más frecuentes, vea Preguntas más frecuentes sobre SQL Server en Linux.
¿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 más información, vea Cómo colaborar en la documentación de SQL Server.
Eventos
31 mar, 23 - 2 abr, 23
Evento de aprendizaje de SQL, Fabric y Power BI más grande. 31 de marzo – 2 de abril. Use el código FABINSIDER para ahorrar $400.
Regístrate hoyCursos
Módulo
Implementación de SQL Server en Linux - Training
Obtenga información sobre los requisitos previos para ejecutar SQL Server en Linux y los pasos para instalar SQL Server en Linux. Además, obtenga información sobre cómo instalar herramientas de línea de comandos.
Certificación
Microsoft Certified: Azure Database Administrator Associate - Certifications
Administre una infraestructura de base de datos de SQL Server para bases de datos relacionales locales e híbridas en la nube mediante las ofertas de bases de datos relacionales PaaS de Microsoft.
Documentación
SUSE: Instalación de SQL Server en Linux - SQL Server
En esta guía de inicio rápido se explica cómo instalar SQL Server en SUSE Linux Enterprise Server y, después, crear y consultar una base de datos con sqlcmd.
Configuración de repositorios para instalar y actualizar SQL Server en Linux - SQL Server
Vea y configure repositorios de origen para SQL Server en Linux. El repositorio de origen afecta a la versión de SQL Server que se aplica durante la instalación y la actualización.
Ubuntu: Instalación de SQL Server en Linux - SQL Server
En este inicio rápido se explica cómo instalar SQL Server 2017 y versiones posteriores en Ubuntu y, después, crear y consultar una base de datos con sqlcmd.