Definir configurações do SQL Server com variáveis de ambiente no Linux

Aplica-se a:SQL Server em Linux

Você pode usar várias variáveis de ambiente diferentes para configurar o SQL Server no Linux. Essas variáveis são usadas em dois cenários:

Dica

Para configurar SQL Server após estes cenários de configuração, veja Configure SQL Server em Linux com a ferramenta mssql-conf.

Variáveis de ambiente

Variável de ambiente Descrição
ACCEPT_EULA Defina a variável ACCEPT_EULA para qualquer valor para confirmar a aceitação do Acordo de Licenciamento de Utilizador Final. Configuração necessária para a imagem do SQL Server.
MSSQL_SA_PASSWORD Configura a sa palavra-passe.

A variável de ambiente SA_PASSWORD foi preterida. Use MSSQL_SA_PASSWORD em vez disso.
MSSQL_DB Define o nome de uma base de dados para criar no início do contentor.
MSSQL_USER Se MSSQL_DB estiver definido, define o nome de um utilizador não-adminsa a ser criado no arranque do contentor. O utilizador recebe direitos de acesso à MSSQL_DB base de dados. Se esta variável for usada, MSSQL_PASSWORD também deve ser definida. Se MSSQL_DB não for definido, esta variável é ignorada.
MSSQL_PASSWORD Define a palavra-passe do utilizador cujo nome está em MSSQL_USER. Se esta variável for usada, MSSQL_USER também deve ser definida. Se MSSQL_DB não for definido, esta variável é ignorada.
MSSQL_PID Define a edição SQL Server ou chave de produto. Os valores possíveis estão listados na seguinte tabela de edições do SQL Server . Se especificar uma chave de produto, deve ser na forma de #####-#####-#####-#####-#####, onde # é um número ou uma letra.
MSSQL_LCID Define a ID de idioma a ser usada para o SQL Server. Por exemplo, 1036 é francês.
MSSQL_COLLATION Define o agrupamento padrão para o SQL Server. Essa configuração substitui o mapeamento padrão de ID de idioma (LCID) para agrupamento.
MSSQL_MEMORY_LIMIT_MB Define a quantidade máxima de memória (em MB) que o SQL Server pode usar. Por padrão, é 80% da memória física total.
MSSQL_TCP_PORT Configura a porta TCP onde o SQL Server escuta (padrão 1433).
MSSQL_IP_ADDRESS Define o endereço IP. Atualmente, o endereço IP deve ser estilo IPv4 (0.0.0.0).
MSSQL_BACKUP_DIR Define a localização padrão do diretório de backup.
MSSQL_DATA_DIR Altera o diretório onde são criados os novos ficheiros de dados SQL Server base de dados (.mdf).
MSSQL_LOG_DIR Altera o diretório onde são criados os novos ficheiros de registo da base de dados SQL Server (.ldf).
MSSQL_DUMP_DIR Altera o diretório em que o SQL Server deposita, por padrão, os dumps de memória e outros ficheiros de resolução de problemas.
MSSQL_ENABLE_HADR Permite grupos de disponibilidade. Por exemplo, 1 ativa e 0 desativa a funcionalidade.
MSSQL_AGENT_ENABLED Ativa o SQL Server Agent. Por exemplo, true ativa e false desativa o agente. Por defeito, o agente está desativado.
MSSQL_MASTER_DATA_FILE Define o local do arquivo de dados do banco de dados master. Deve ser designado master.mdf até à primeira execução do SQL Server.
MSSQL_MASTER_LOG_FILE Define o local do arquivo de log do banco de dados master. Deve ser designado mastlog.ldf até à primeira execução do SQL Server.
MSSQL_ERROR_LOG_FILE Define o local dos arquivos errorlog. Por exemplo, /var/opt/mssql/log/errorlog.

Edições do SQL Server

MSSQL_PID Edition
Evaluation Edição de Avaliação do SQL Server
Developer Edição SQL Server Developer
Express Edição SQL Server Express
Web Edição Web do SQL Server
Standard Edição Standard do SQL Server
Enterprise Esta opção legada representa licenciamento baseado em Enterprise edition Server + Client Access License (CAL), e está limitada a um máximo de 20 núcleos por instância SQL Server. Enterprise não está disponível para novos contratos. Você deve escolher EnterpriseCore quando desejar implantar a edição Enterprise.
EnterpriseCore Edição SQL Server Enterprise Core. EnterpriseCore representa o modelo de licenciamento de servidor baseado em núcleo sem limites de núcleo. Para obter mais informações, consulte Limites de capacidade de computação por edição do SQL Server.
A product key Se especificar uma chave de produto, deve ser na forma de #####-#####-#####-#####-#####, onde # é um número ou uma letra.

Para mais informações sobre estas edições, consulte edições SQL Server.

MSSQL_PID Edition
Evaluation Edição de Avaliação do SQL Server
Express Edição SQL Server Express
StandardDeveloper SQL Server Standard Developer Edition
Standard Edição Standard do SQL Server
EnterpriseDeveloper Edição para Desenvolvedores Empresariais do SQL Server
Enterprise Esta opção legada representa licenciamento baseado em Enterprise edition Server + Client Access License (CAL), e está limitada a um máximo de 20 núcleos por instância SQL Server. Enterprise não está disponível para novos contratos. Você deve escolher EnterpriseCore quando desejar implantar a edição Enterprise.
EnterpriseCore Edição SQL Server Enterprise Core. EnterpriseCore representa o modelo de licenciamento de servidor baseado em núcleo sem limites de núcleo. Para obter mais informações, consulte Limites de capacidade de computação por edição do SQL Server.
A product key Se especificar uma chave de produto, deve ser na forma de #####-#####-#####-#####-#####, onde # é um número ou uma letra.

Para mais informações sobre estas edições, consulte edições SQL Server.

Utilizar com a configuração inicial

Este exemplo executa mssql-conf setup com variáveis de ambiente configuradas. As seguintes variáveis de ambiente são especificadas:

  • ACCEPT_EULA aceita o contrato de licença de usuário final.

  • MSSQL_PID especifica a Developer Edition licenciada livremente do SQL Server para uso fora da produção.

  • MSSQL_SA_PASSWORD define uma senha forte. Sua senha deve seguir a política de senha de padrão do SQL Server. Por padrão, a senha deve ter pelo menos oito caracteres e conter caracteres de três dos quatro conjuntos a seguir: letras maiúsculas, letras minúsculas, dígitos de base 10 e símbolos. As palavras-passe podem ter até 128 caracteres. Use senhas tão longas e complexas quanto possível.

  • MSSQL_TCP_PORT define a porta TCP que o SQL Server escuta como 1234.

sudo ACCEPT_EULA='Y' MSSQL_PID='Developer' MSSQL_SA_PASSWORD='<password>' MSSQL_TCP_PORT=1234 /opt/mssql/bin/mssql-conf setup

Utilizar com Docker

Este exemplo docker comando usa as seguintes variáveis de ambiente para criar um novo contêiner do SQL Server:

  • ACCEPT_EULA aceita o contrato de licença de usuário final.

  • MSSQL_PID especifica a Developer Edition licenciada livremente do SQL Server para uso fora da produção.

  • MSSQL_SA_PASSWORD define uma senha forte. Sua senha deve seguir a política de senha de padrão do SQL Server. Por padrão, a senha deve ter pelo menos oito caracteres e conter caracteres de três dos quatro conjuntos a seguir: letras maiúsculas, letras minúsculas, dígitos de base 10 e símbolos. As palavras-passe podem ter até 128 caracteres. Use senhas tão longas e complexas quanto possível.

  • MSSQL_TCP_PORT define a porta TCP que o SQL Server escuta como 1234. Isso significa que, em vez de mapear a porta 1433 (padrão) para uma porta de host, a porta TCP personalizada deve ser mapeada com o comando -p 1234:1234 neste exemplo.

Se você estiver executando o Docker no Linux, use a seguinte sintaxe entre aspas simples:

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

Se você estiver executando o Docker no Windows, use a seguinte sintaxe com aspas duplas:

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

Observação

O processo para executar edições de produção em contêineres é ligeiramente diferente. Para obter mais informações, consulte Executar imagens de contêiner de produção.

Se você estiver executando o Docker no Linux, use a seguinte sintaxe entre aspas simples:

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

Se você estiver executando o Docker no Windows, use a seguinte sintaxe com aspas duplas:

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

Se você estiver executando o Docker no Linux, use a seguinte sintaxe entre aspas simples:

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

Se você estiver executando o Docker no Windows, use a seguinte sintaxe com aspas duplas:

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

Se você estiver executando o Docker no Linux, use a seguinte sintaxe entre aspas simples:

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

Se você estiver executando o Docker no Windows, use a seguinte sintaxe com aspas duplas:

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

Atenção

Sua senha deve seguir a política de senha de padrão do SQL Server. Por padrão, a senha deve ter pelo menos oito caracteres e conter caracteres de três dos quatro conjuntos a seguir: letras maiúsculas, letras minúsculas, dígitos de base 10 e símbolos. As palavras-passe podem ter até 128 caracteres. Use senhas tão longas e complexas quanto possível.

Contribuir para a documentação do SQL

Você sabia que você mesmo pode editar conteúdo SQL? Se o fizer, não só ajudará a melhorar a nossa documentação, como também será creditado como contribuidor da página.

Para obter mais informações, consulte Editar documentação do Microsoft Learn.