Configuración de opciones de SQL Server con variables de entorno en Linux

Se aplica a:SQL Server: Linux

Puede usar diversas variables de entorno para configurar SQL Server 2017 (14.x) en Linux. Estas variables se usan en dos escenarios:

Puede usar diversas variables de entorno para configurar SQL Server 2019 (15.x) en Linux. Estas variables se usan en dos escenarios:

Puede usar diversas variables de entorno para configurar SQL Server 2022 (16.x) en Linux. Estas variables se usan en dos escenarios:

Sugerencia

Si necesita configurar SQL Server después de estos escenarios de instalación, consulte Configurar SQL Server en Linux con la herramienta mssql-conf.

Variables de entorno

Variable de entorno Descripción
ACCEPT_EULA Establezca la variable ACCEPT_EULA en cualquier valor para confirmar que acepta el Contrato de licencia de usuario final. Configuración requerida para la imagen de SQL Server.
MSSQL_SA_PASSWORD Configure la contraseña de usuario SA.

La variable de entorno SA_PASSWORD está en desuso. En su lugar, use MSSQL_SA_PASSWORD.
MSSQL_PID Establezca la edición de SQL Server o la clave de producto. Los valores posibles son:

Evaluation
Developer
Express
Web
Standard
Enterprise1
EnterpriseCore1
A product key

Si especifica una clave de producto, debe tener el formato #####-#####-#####-#####-#####, donde "#" es un número o una letra.
MSSQL_LCID Establece el identificador de idioma que se usará para SQL Server. Por ejemplo, 1036 es francés.
MSSQL_COLLATION Establece la intercalación predeterminada para SQL Server. Esto reemplaza la asignación predeterminada de id. de idioma (LCID) por la intercalación.
MSSQL_MEMORY_LIMIT_MB Establece la cantidad máxima de memoria (en MB) que puede usar SQL Server. De forma predeterminada, es el 80 % de la memoria física total.
MSSQL_TCP_PORT Configure el puerto TCP en el que escucha SQL Server (valor predeterminado: 1433).
MSSQL_IP_ADDRESS Establezca la dirección IP. Actualmente, la dirección IP debe ser de estilo IPv4 (0.0.0.0).
MSSQL_BACKUP_DIR Establezca la ubicación del directorio de copia de seguridad predeterminado.
MSSQL_DATA_DIR Cambie el directorio en el que se crean los archivos de datos (.mdf) de la base de datos de SQL Server.
MSSQL_LOG_DIR Cambie el directorio en el que se crean los archivos de registro (.ldf) de la base de datos de SQL Server.
MSSQL_DUMP_DIR Cambie el directorio en el que SQL Server deposita de forma predeterminada los volcados de memoria y otros archivos de solución de problemas.
MSSQL_ENABLE_HADR Habilite el grupo de disponibilidad. Por ejemplo, "1" significa que está habilitado y "0", deshabilitado.
MSSQL_AGENT_ENABLED Habilite el Agente SQL Server. Por ejemplo, "true" significa que está habilitado y "false", deshabilitado. De forma predeterminada, el agente está deshabilitado.
MSSQL_MASTER_DATA_FILE Establece la ubicación del archivo de datos de la base de datos master. Debe denominarse master.mdf hasta la primera ejecución de SQL Server.
MSSQL_MASTER_LOG_FILE Establece la ubicación del archivo de registro de la base de datos master. Debe denominarse mastlog.ldf hasta la primera ejecución de SQL Server.
MSSQL_ERROR_LOG_FILE Establece la ubicación de los archivos errorlog. Por ejemplo, /var/opt/mssql/log/errorlog.

1 La licencia heredada Enterprise representa la edición Enterprise con licencias basadas en servidor + licencia de acceso de cliente (CAL), y está limitada a un máximo de 20 núcleos por instancia de SQL Server. Enterprise no está disponible para nuevos acuerdos. Debe elegir EnterpriseCore cuándo desea implementar Enterprise Edition. EnterpriseCore representa el modelo de licencias de servidor basado en núcleo sin límites de núcleos. Para obtener más información, vea Límites de la capacidad de cálculo de cada edición de SQL Server.

Uso con la configuración inicial

En este ejemplo se ejecuta mssql-conf setup con variables de entorno configuradas. Se especifican las siguientes variables de entorno:

  • ACCEPT_EULA acepta el acuerdo de licencia de usuario final.
  • MSSQL_PID especifica la edición para desarrolladores con licencia gratuita de SQL Server para su uso en entornos que no son de producción.
  • MSSQL_SA_PASSWORD establece una contraseña segura.
  • MSSQL_TCP_PORT establece en 1234 el puerto TCP en el que escucha SQL Server.
sudo ACCEPT_EULA='Y' MSSQL_PID='Developer' MSSQL_SA_PASSWORD='<YourStrong!Passw0rd>' MSSQL_TCP_PORT=1234 /opt/mssql/bin/mssql-conf setup

Uso con Docker

Este comando de docker de ejemplo usa las siguientes variables de entorno para crear un contenedor de SQL Server:

  • ACCEPT_EULA acepta el acuerdo de licencia de usuario final.
  • MSSQL_PID especifica la edición para desarrolladores con licencia gratuita de SQL Server para su uso en entornos que no son de producción.
  • MSSQL_SA_PASSWORD establece una contraseña segura.
  • MSSQL_TCP_PORT establece en 1234 el puerto TCP en el que escucha SQL Server. Esto significa que, en lugar de asignar el puerto 1433 (predeterminado) a un puerto de host, el puerto TCP personalizado se debe asignar con el comando -p 1234:1234 en este ejemplo.

Si ejecuta Docker en Linux, use la siguiente sintaxis con comillas simples:

docker run -e ACCEPT_EULA=Y -e MSSQL_PID='Developer' -e MSSQL_SA_PASSWORD='<YourStrong!Passw0rd>' -e MSSQL_TCP_PORT=1234 -p 1234:1234 -d mcr.microsoft.com/mssql/server:2017-latest

Si ejecuta Docker en Windows, use la siguiente sintaxis con comillas dobles:

docker run -e ACCEPT_EULA=Y -e MSSQL_PID="Developer" -e MSSQL_SA_PASSWORD="<YourStrong!Passw0rd>" -e MSSQL_TCP_PORT=1234 -p 1234:1234 -d mcr.microsoft.com/mssql/server:2017-latest

Nota

El proceso para ejecutar las ediciones de producción en contenedores es ligeramente diferente. Para obtener más información, vea Run production container image (Ejecutar imágenes de contenedor de producción).

Si ejecuta Docker en Linux, use la siguiente sintaxis con comillas simples:

docker run -e ACCEPT_EULA=Y -e MSSQL_PID='Developer' -e MSSQL_SA_PASSWORD='<YourStrong!Passw0rd>' -e MSSQL_TCP_PORT=1234 -p 1234:1234 -d mcr.microsoft.com/mssql/server:2019-latest

Si ejecuta Docker en Windows, use la siguiente sintaxis con comillas dobles:

docker run -e ACCEPT_EULA=Y -e MSSQL_PID="Developer" -e MSSQL_SA_PASSWORD="<YourStrong!Passw0rd>" -e MSSQL_TCP_PORT=1234 -p 1234:1234 -d mcr.microsoft.com/mssql/server:2019-latest

Si ejecuta Docker en Linux, use la siguiente sintaxis con comillas simples:

docker run -e ACCEPT_EULA=Y -e MSSQL_PID='Developer' -e MSSQL_SA_PASSWORD='<YourStrong!Passw0rd>' -e MSSQL_TCP_PORT=1234 -p 1234:1234 -d mcr.microsoft.com/mssql/server:2022-latest

Si ejecuta Docker en Windows, use la siguiente sintaxis con comillas dobles:

docker run -e ACCEPT_EULA=Y -e MSSQL_PID="Developer" -e MSSQL_SA_PASSWORD="<YourStrong!Passw0rd>" -e MSSQL_TCP_PORT=1234 -p 1234:1234 -d mcr.microsoft.com/mssql/server:2022-latest

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 más información, vea Cómo colaborar en la documentación de SQL Server.