次の方法で共有


Linux 上で環境変数を使って SQL Server の設定を構成する

適用対象:SQL Server - Linux

複数の異なる環境変数を使用して、SQL Server on Linux を構成できます。 このような変数は、次の 2 つのシナリオで使用されます。

ヒント

これらのセットアップ シナリオの後に SQL Server を構成する必要がある場合は、「mssql-conf ツールを使用して SQL Server on Linux を構成する」をご覧ください。

環境変数

環境変数 説明
ACCEPT_EULA ACCEPT_EULA 変数を任意の値に設定し、エンド ユーザー使用許諾契約書の承諾を確認します。 SQL Server イメージの設定が必要です。
MSSQL_SA_PASSWORD sa パスワードを構成します。

SA_PASSWORD 環境変数は非推奨です。 代わりに MSSQL_SA_PASSWORD を使用してください
MSSQL_PID SQL Server エディションまたはプロダクト キーを設定します。 使用可能な値は、次の SQL Server エディションの表に 示されています。 プロダクト キーを指定する場合は、 #####-#####-#####-#####-#####の形式である必要があります。ここで、 # は数字または文字です。
MSSQL_LCID SQL Server に使用する言語 ID を設定します。 たとえば、1036 はフランス語です。
MSSQL_COLLATION SQL Server の既定の照合順序を設定します。 これにより、言語 ID (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 エージェントを有効にします。 たとえば、'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 のようにします。

SQL Server のエディション

MSSQL_PID Edition
Evaluation SQL Server 評価版
Developer SQL Server Developer エディション
Express SQL Server Express エディション
Web SQL Server Web エディション
Standard SQL Server Standard エディション
Enterprise このレガシ オプションは、Enterprise Edition Server + Client Access License (CAL) ベースのライセンスを表し、SQL Server インスタンスあたり最大 20 コアに制限されています。 Enterprise は、新しい契約では使用できません。 Enterprise Edition をデプロイする場合は、EnterpriseCore を選ぶ必要があります。
EnterpriseCore SQL Server Enterprise Core エディション。 EnterpriseCore は、コア制限のないコア ベースのサーバー ライセンス モデルを表明します。 詳細については、「SQL Server のエディション別の計算容量制限」を参照してください。
A product key プロダクト キーを指定する場合は、 #####-#####-#####-#####-#####の形式である必要があります。ここで、 # は数字または文字です。

これらのエディションの詳細については、 SQL Server のエディションを参照してください。

MSSQL_PID Edition
Evaluation SQL Server 評価版
Express SQL Server Express エディション
StandardDeveloper

(コンテナーの場合は、 DeveloperStandardを使用します)
SQL Server Standard Developer エディション
Standard SQL Server Standard エディション
EnterpriseDeveloper

(コンテナーの場合は、 Developerを使用します)
SQL Server Enterprise Developer エディション
Enterprise このレガシ オプションは、Enterprise Edition Server + Client Access License (CAL) ベースのライセンスを表し、SQL Server インスタンスあたり最大 20 コアに制限されています。 Enterprise は、新しい契約では使用できません。 Enterprise Edition をデプロイする場合は、EnterpriseCore を選ぶ必要があります。
EnterpriseCore SQL Server Enterprise Core エディション。 EnterpriseCore は、コア制限のないコア ベースのサーバー ライセンス モデルを表明します。 詳細については、「SQL Server のエディション別の計算容量制限」を参照してください。
A product key プロダクト キーを指定する場合は、 #####-#####-#####-#####-#####の形式である必要があります。ここで、 # は数字または文字です。

これらのエディションの詳細については、 SQL Server のエディションを参照してください。

初期セットアップでの使用

この例では、構成済みの環境変数を使って mssql-conf setup を実行します。 以下の環境変数が指定されています。

  • ACCEPT_EULA は、エンド ユーザー ライセンス契約を承諾します。

  • MSSQL_PID は、非運用環境で使用するために、無料でライセンスが付与される Developer Edition の SQL Server を指定します。

  • MSSQL_SA_PASSWORD 強力なパスワードを設定します。 パスワードは SQL Server の既定のパスワード ポリシーに従う必要があります。 既定では、パスワードの長さは少なくとも 8 文字で、大文字、小文字、10 進数の数字、記号の 4 種類のうち 3 種類を含んでいる必要があります。 パスワードには最大 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 は、非運用環境で使用するために、無料でライセンスが付与される Developer Edition の SQL Server を指定します。

    SQL Server 2025 (17.x) 以降のバージョンのコンテナーを展開する場合は、Standard Developer エディションの場合は MSSQL_PID=DeveloperStandard 、Enterprise Developer エディションの場合は MSSQL_PID=Developer を使用します。

  • MSSQL_SA_PASSWORD 強力なパスワードを設定します。 パスワードは SQL Server の既定のパスワード ポリシーに従う必要があります。 既定では、パスワードの長さは少なくとも 8 文字で、大文字、小文字、10 進数の数字、記号の 4 種類のうち 3 種類を含んでいる必要があります。 パスワードには最大 128 文字まで使用できます。 パスワードはできるだけ長く、複雑にします。

  • MSSQL_TCP_PORT は、SQL Server がリッスンする TCP ポートを 1234 に設定します。 つまり、この例では、ホストのポートにポート 1433 (既定値) をマップするのではなく、-p 1234:1234 コマンドを使ってカスタム TCP ポートをマップする必要があります。

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

コンテナーで実稼働エディションを実行するためのプロセスは若干異なります。 詳細については、「Run production container images」(実稼働のコンテナー イメージを実行する) を参照してください。

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

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:2025-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:2025-latest

SQL Server 2025 (17.x) 以降のバージョンのコンテナーを展開する場合は、Standard Developer エディションの場合は MSSQL_PID=DeveloperStandard 、Enterprise Developer エディションの場合は MSSQL_PID=Developer を使用します。

注意事項

パスワードは SQL Server の既定のパスワード ポリシーに従う必要があります。 既定では、パスワードの長さは少なくとも 8 文字で、大文字、小文字、10 進数の数字、記号の 4 種類のうち 3 種類を含んでいる必要があります。 パスワードには最大 128 文字まで使用できます。 パスワードはできるだけ長く、複雑にします。

SQL ドキュメントへの投稿

SQL コンテンツを自分で編集できることはご存じですか。 これにより、ドキュメントが改善されるだけでなく、ページの共同作成者としてもクレジットされます。

詳細については、 Microsoft Learn ドキュメントの編集を参照してください。