Настройка параметров SQL Server с помощью переменных среды в Linux
Область применения: SQL Server — Linux
Для настройки SQL Server 2017 (14.x) в Linux можно использовать несколько различных переменных среды. Эти переменные используются в двух сценариях:
Для настройки SQL Server 2019 (15.x) в Linux можно использовать несколько различных переменных среды. Эти переменные используются в двух сценариях:
Для настройки SQL Server 2022 (16.x) в Linux можно использовать несколько различных переменных среды. Эти переменные используются в двух сценариях:
- Начальная настройка с помощью команды
mssql-conf setup
. - Настройка нового образа контейнера SQL Server Linux.
Совет
Если требуется выполнить настройку SQL Server после начальной настройки, ознакомьтесь с разделом Настройка SQL Server на Linux с помощью средства mssql-conf.
Переменные среды
Переменная среды | Description |
---|---|
ACCEPT_EULA |
Задайте для переменной ACCEPT_EULA любое значение, чтобы подтвердить принятие соглашения о лицензировании конечных пользователей. Обязательный параметр для образа SQL Server. |
MSSQL_SA_PASSWORD |
sa Настройте пароль.Переменная среды SA_PASSWORD является нерекомендуемой. Вместо этого используйте MSSQL_SA_PASSWORD . |
MSSQL_PID |
Укажите выпуск SQL Server или ключ продукта. Возможные значения включают:Evaluation Developer Express Web Standard Enterprise 1EnterpriseCore 1A product key Если указывается ключ продукта, он должен соответствовать формату #####-#####-#####-#####-#####, где каждый знак "#" представляет собой букву или цифру. |
MSSQL_LCID |
Задайте идентификатор языка для SQL Server. Например, значение 1036 соответствует французскому языку. |
MSSQL_COLLATION |
Задает параметры сортировки по умолчанию для SQL Server. Переопределяет заданное по умолчанию сопоставление идентификатора языка (LCID) и параметров сортировки. |
MSSQL_MEMORY_LIMIT_MB |
Задает максимальный объем памяти (в МБ), который может использовать SQL Server. По умолчанию имеет значение 80 % от общего объема физической памяти. |
MSSQL_TCP_PORT |
Настройте порт TCP, который будет прослушивать SQL Server (по умолчанию 1433). |
MSSQL_IP_ADDRESS |
Укажите IP-адрес. На данный момент необходимо задавать IP-адрес в стиле IPv4 (0.0.0.0). |
MSSQL_BACKUP_DIR |
Задайте каталог резервного копирования по умолчанию. |
MSSQL_DATA_DIR |
Измените каталог, в котором создаются новые файлы данных базы данных SQL Server ..mdf |
MSSQL_LOG_DIR |
Измените каталог, в котором создаются новые файлы журнала.ldf базы данных SQL Server. |
MSSQL_DUMP_DIR |
Измените каталог, в котором SQL Server помещает дампы памяти и другие файлы устранения неполадок по умолчанию. |
MSSQL_ENABLE_HADR |
Включение группы доступности. Например, значение "1" включает группу, а "0" отключает ее. |
MSSQL_AGENT_ENABLED |
Включение агента SQL Server. Например, значение "true" включает агент, а "false" отключает его. По умолчанию агент отключен. |
MSSQL_MASTER_DATA_FILE |
Задает расположение master файла данных базы данных. Должно быть названо master.mdf до первого запуска SQL Server. |
MSSQL_MASTER_LOG_FILE |
Задает расположение master файла журнала базы данных. Должно быть названо mastlog.ldf до первого запуска SQL Server. |
MSSQL_ERROR_LOG_FILE |
Задает расположение файлов errorlog . Например, /var/opt/mssql/log/errorlog . |
1 Устаревшая Enterprise
лицензия представляет выпуск Enterprise с лицензией на основе сервера и клиентского доступа (CAL) и ограничена не более 20 ядрами на экземпляр SQL Server. Enterprise
недоступно для новых соглашений. Вы должны выбрать EnterpriseCore
, когда вы хотите развернуть выпуск Enterprise. EnterpriseCore
представляет модель лицензирования сервера на основе ядра без основных ограничений. Дополнительные сведения см. в статье Вычисление производительности выпуска SQL Server.
Использование с начальной настройкой
В этом примере mssql-conf setup
запускается с настроенными переменными среды. Заданы следующие переменные среды:
ACCEPT_EULA
принимает лицензионное соглашение конечного пользователя.MSSQL_PID
указывает бесплатно лицензированный выпуск Developer Edition SQL Server для непроизводственных приложений.MSSQL_SA_PASSWORD
задает надежный пароль. Пароль должен соответствовать политике паролей по умолчанию SQL Server. По умолчанию пароль должен быть не короче восьми символов и содержать три вида символов из следующих: прописные буквы, строчные буквы, десятичные цифры, специальные символы. Пароли могут иметь длину до 128 символов. Рекомендуется использовать максимально длинные и сложные пароли.MSSQL_TCP_PORT
задает TCP-порт, прослушивающий SQL Server до 1234.
sudo ACCEPT_EULA='Y' MSSQL_PID='Developer' MSSQL_SA_PASSWORD='<password>' MSSQL_TCP_PORT=1234 /opt/mssql/bin/mssql-conf setup
Использование с Docker
В этом примере docker
команда использует следующие переменные среды для создания нового контейнера SQL Server:
ACCEPT_EULA
принимает лицензионное соглашение конечного пользователя.MSSQL_PID
указывает бесплатно лицензированный выпуск Developer Edition SQL Server для непроизводственных приложений.MSSQL_SA_PASSWORD
задает надежный пароль. Пароль должен соответствовать политике паролей по умолчанию SQL Server. По умолчанию пароль должен быть не короче восьми символов и содержать три вида символов из следующих: прописные буквы, строчные буквы, десятичные цифры, специальные символы. Пароли могут иметь длину до 128 символов. Рекомендуется использовать максимально длинные и сложные пароли.MSSQL_TCP_PORT
задает TCP-порт, прослушивающий SQL Server до 1234. Это означает, что вместо сопоставления порта 1433 (по умолчанию) с портом узла в этом примере необходимо выполнить сопоставление пользовательского порта TCP с помощью команды-p 1234:1234
.
Если вы работаете с Docker в Linux, используйте следующий синтаксис с одинарными кавычками:
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
Если вы работаете с Docker в Windows, используйте следующий синтаксис с двойными кавычками:
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
Примечание.
Процесс запуска контейнера с производственными выпусками немного отличается. Дополнительные сведения см. в разделе Запуск образов контейнеров с производственными выпусками.
Если вы работаете с Docker в Linux, используйте следующий синтаксис с одинарными кавычками:
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
Если вы работаете с Docker в Windows, используйте следующий синтаксис с двойными кавычками:
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
Если вы работаете с Docker в Linux, используйте следующий синтаксис с одинарными кавычками:
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
Если вы работаете с Docker в Windows, используйте следующий синтаксис с двойными кавычками:
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
Внимание
Пароль должен соответствовать политике паролей по умолчанию SQL Server. По умолчанию пароль должен быть не короче восьми символов и содержать три вида символов из следующих: прописные буквы, строчные буквы, десятичные цифры, специальные символы. Пароли могут иметь длину до 128 символов. Рекомендуется использовать максимально длинные и сложные пароли.
Связанный контент
- Настройка SQL Server на Linux с помощью средства mssql-con
- Руководство по установке SQL Server на Linux
Примите участие в разработке документации по SQL
Знаете ли вы, что содержимое SQL можно изменить самостоятельно? Это не только улучшит нашу документацию, но и даст вам статус участника в создании этой страницы.
Дополнительные сведения см. в разделе Участие в работе над документацией по SQL Server.