環境変数を使用したインストールですが、Configure SQL Server settings with environment variables on Linux に公開されている内容は、CTP 2.1 時点では Docker の対応のみとなっていますが、一部の環境変数についてはインストール版の SQL Server on Linux でも使用することができるようになっていますので軽くまとめてみたいと思います。
インストールについては「/opt/mssql/lib/mssql-conf」の以下のファイルあたりを見ると把握できるかと。
- mssql-conf.py
- mssqlconfhelper.py
通常のインストールでは、
sudo /opt/mssql/bin/mssql-conf setup
を実行しますが、この場合、EULA の許諾と、sa のパスワード設定が必要となり対話型のインストールとなっています。
インストールについてはプロンプトを表示させない非対話形式のインストールにも対応しており、mssql-conf を実行する際に「–noprompt または -n」を設定することでプロンプトを省略することができます。
また「setup」オプション指定時には「accept_eula」オプションを合わせて指定することで、EULA を許諾した状態でセットアップを実行することができます。
あとは、sa のパスワードですが、「SA_PASSWORD」環境変数を使用することで、sa のパスワードを環境変数に指定した状態でインストールをすることができます。
実際には以下のような形での実行となるでしょうか。
export SA_PASSWORD=<パスワード> sudo -E /opt/mssql/bin/mssql-conf -n setup accept_eula export -n SA_PASSWORD
セットアップで使用される、Python のスクリプトから確認できるのですが、そのほかにも「MSSQL_LCID」や「MSSQL_PID」という環境変数を使用することができるようになっています。
LCID はインストールする言語となるようで、「1041」を指定することで、日本語のロケールでインストールすることができます。
「MSSQL_PID」については、現状のスクリプトではコメント化されているのですが、
- Express
- Evaluation
- Developer
- プロダクトキー
を指定することができ、エディションの設定を行うことができるようになっています。
コメント化を解除して、「Express」を指定してみたところ、Express Edition でインストールが行われていましたので、CTP 2.1 でも動作はするようですね。
Bootcamp 2017 – SQL Server on Linux で公開されていますが、2017/4 時点の情報としては、SQL Server on Linux は、Windows の SQL Server と同じエディションが提供される予定であり、SQL Server のライセンスを購入することで、Windows Server または、Linux で動作させることができるような想定となっているようです。
現時点の情報については、CTP ですので、最終的なライセンスがどうなるかは RTM した際に確認が必要ですが。
ライセンスを購入すると適切なエディションのプロダクトキーが提供され、それを指定してインストールをすることで、製品版として使えるようになるのでしょうね。