使用環境變數在 Linux 上設定 SQL Server 設定
適用於:SQL Server - Linux
您可以使用數個不同的環境變數來設定 Linux 上的 SQL Server 2017 (14.x)。 在下列兩種案例中會使用這些變數:
您可以使用數個不同的環境變數來設定 Linux 上的 SQL Server 2019 (15.x)。 在下列兩種案例中會使用這些變數:
您可以使用數個不同的環境變數來設定 Linux 上的 SQL Server 2022 (16.x)。 在下列兩種案例中會使用這些變數:
- 使用
mssql-conf setup
命令來設定初始設定。 - 若要設定新的 SQL Server Linux 容器映像。
提示
如果您需要在這些設定案例之後設定 SQL Server,請參閱使用 mssql-conf 工具在 Linux 上設定 SQL Server。
環境變數
環境變數 | 描述 |
---|---|
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 可使用的記憶體數量上限 (MB)。 預設為實體記憶體總計的 80%。 |
MSSQL_TCP_PORT |
SQL Server 進行接聽的 TCP 連接埠 (預設值為 1433)。 |
MSSQL_IP_ADDRESS |
設定 IP 位址。 目前 IP 位址必須是 IPv4 樣式 (0.0.0.0)。 |
MSSQL_BACKUP_DIR |
設定預設備份目錄位置。 |
MSSQL_DATA_DIR |
變更新 SQL Server 資料庫資料檔 (.mdf ) 的建立目錄。 |
MSSQL_LOG_DIR |
變更新 SQL Server 資料庫記錄檔 (.ldf ) 的建立目錄。 |
MSSQL_DUMP_DIR |
變更 SQL Server 預設存放記憶體傾印及其他疑難排解檔案的目錄。 |
MSSQL_ENABLE_HADR |
啟用可用性群組。 例如 '1' 為啟用,'0' 為停用 |
MSSQL_AGENT_ENABLED |
啟用 SQL Server Agent。 例如 'true' 為啟用,'false' 為停用。 代理程式預設為停用。 |
MSSQL_MASTER_DATA_FILE |
設定 master 資料庫資料檔的位置。 在第一次執行 SQL Server 之前,必須命名為 master.mdf 。 |
MSSQL_MASTER_LOG_FILE |
設定 master 資料庫記錄檔的位置。 在第一次執行 SQL Server 之前,必須命名為 mastlog.ldf 。 |
MSSQL_ERROR_LOG_FILE |
設定 errorlog 檔案的位置。 例如: /var/opt/mssql/log/errorlog 。 |
1 舊版 Enterprise
授權表示 Enterprise 版本與以伺服器 + 用戶端存取使用權 (CAL) 為基礎的授權,限制為每個 SQL Server 執行個體最多 20 個核心。 Enterprise
不適用於新的合約。 當您要部署 Enterprise 版本時,您應該選擇 EnterpriseCore
。 EnterpriseCore
表示沒有核心限制的核心型伺服器授權模型。 如需詳細資訊,請參閱 SQL Server 版本的計算容量限制。
與初始設定搭配使用
此範例會使用已設定的環境變數來執行 mssql-conf setup
。 以下是已指定的環境變數:
ACCEPT_EULA
接受使用者授權合約。MSSQL_PID
指定自由授權的 SQL Server Developer Edition 供非生產環境使用。MSSQL_SA_PASSWORD
設定強式密碼。 您的密碼應遵循 SQL Server 預設 密碼原則。 依預設,密碼長度必須至少有 8 個字元,並包含下列四種字元組合中其中三種組合的字元:大寫字母、小寫字母、以 10 為底數的數字以及符號。 密碼長度最多可達 128 個字元。 盡可能使用長且複雜的密碼。MSSQL_TCP_PORT
將 SQL Server 進行接聽的 TCP 連接埠設定成 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
指定自由授權的 SQL Server Developer Edition 供非生產環境使用。MSSQL_SA_PASSWORD
設定強式密碼。 您的密碼應遵循 SQL Server 預設 密碼原則。 依預設,密碼長度必須至少有 8 個字元,並包含下列四種字元組合中其中三種組合的字元:大寫字母、小寫字母、以 10 為底數的數字以及符號。 密碼長度最多可達 128 個字元。 盡可能使用長且複雜的密碼。MSSQL_TCP_PORT
將 SQL Server 進行接聽的 TCP 連接埠設定成 1234。 這意謂著在此範例中,必須使用-p 1234:1234
命令來對應自訂 TCP 連接埠,而不是將連接埠 1433 (預設值) 對應至主機連接埠。
如果您是在 Linux 上執行 Docker,請搭配單引號使用下列語法:
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
如果您是在 Windows 上執行 Docker,請搭配雙引號使用下列語法:
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
注意
在容器中執行生產版本的程序將有些微差異。 如需詳細資訊,請參閱執行生產容器映像。
如果您是在 Linux 上執行 Docker,請搭配單引號使用下列語法:
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
如果您是在 Windows 上執行 Docker,請搭配雙引號使用下列語法:
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
如果您是在 Linux 上執行 Docker,請搭配單引號使用下列語法:
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
如果您是在 Windows 上執行 Docker,請搭配雙引號使用下列語法:
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 預設 密碼原則。 依預設,密碼長度必須至少有 8 個字元,並包含下列四種字元組合中其中三種組合的字元:大寫字母、小寫字母、以 10 為底數的數字以及符號。 密碼長度最多可達 128 個字元。 盡可能使用長且複雜的密碼。
相關內容
參與編輯 SQL 文件
您知道您可以自行編輯 SQL 內容嗎? 這樣做不僅可以協助改善文件,也能名列該頁面的參與者。
如需詳細資訊,請參閱如何參與 SQL Server 文件