Grow up

生活とプログラミング

Ubuntu 18.04 LXC に SQL Server をインストールする方法

f:id:knkomko:20200614224057j:plain

はじめに

UbuntuSQLServerをインストールする機会があったので、
公式ドキュメントのコマンドを実行する中で発生した問題を解決していきます。
docs.microsoft.com

SQL Serverコマンドラインツールは以下の記事を参考にしてください。
今回と同じ Ubuntu 18.04 LXC にインストールを行った内容になります。
knkomko.hatenablog.com

SQL Server について

SQL Server 2016 からLinuxに対応しています。
SQL Server on Linux のインストール ガイド - SQL Server | Microsoft Docs
f:id:knkomko:20200705030706p:plain

メモリ2GBが必要とありますが、Expressエディションを選択した場合は
1インスタンスが1410MBまでしか使用できない制限があります。
Editions and supported features of SQL Server 2019 - SQL Server | Microsoft Docs
f:id:knkomko:20200705030720p:plain

1. パブリック リポジトリの GPG キーをインポート
wget -qO- https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -

上記コマンドを実行するとwgetコマンドとgnupgが必要だとエラーになりました。
f:id:knkomko:20200705013912p:plain

まずwgetコマンドをインストールすると権限が無いと拒否されたので
f:id:knkomko:20200705015213p:plain

管理者権限で実行すると何事も無くインストールができました。
f:id:knkomko:20200705015502p:plain

次はgnupgコマンドをインストールします。
こちらも管理者権限が必要になるので、管理者権限で実行をします。
f:id:knkomko:20200705015835p:plain

目的のGPGキーのインポートするコマンドを実行すると無事成功しました。
f:id:knkomko:20200705020221p:plain

2. Microsoft Ubuntu リポジトリを登録
sudo add-apt-repository "$(wget -qO- https://packages.microsoft.com/config/ubuntu/18.04/mssql-server-2019.list)"

上記コマンドを実行するとコマンドが無いとエラーになりました。
f:id:knkomko:20200705020611p:plain

新たにパッケージをインストールする必要があるようです。
f:id:knkomko:20200705021043p:plain
Ubuntu Linuxで、add-apt-repositoryしようとして「コマンドがない」って言われたら - CLOVER🍀

まずは software-properties-common のパッケージをインストールしてから
f:id:knkomko:20200705021622p:plain

再びコマンドを実行すると、リポジトリの登録ができました。
f:id:knkomko:20200705022018p:plain

3. 次のコマンドを実行して SQL Server をインストール
sudo apt-get update
sudo apt-get install -y mssql-server

まずは apt-get update コマンドを実行します。
f:id:knkomko:20200705022517p:plain

次に SQL Server のインストールコマンドを実行します。
f:id:knkomko:20200705022917p:plain

4. パッケージのインストールが完了したら、mssql-conf setup を実行し、プロンプトに従って SA パスワードを設定し、エディションを選択
sudo /opt/mssql/bin/mssql-conf setup

コマンドを実行するとエディションの一覧が表示されました。
f:id:knkomko:20200705023202p:plain

今回はExpressを使用するので 3 を入力してEnterを押します。
f:id:knkomko:20200705023525p:plain

ライセンスに同意するので Yes を入力します。
f:id:knkomko:20200705023627p:plain

最後に管理者アカウントのパスワードを設定します。
f:id:knkomko:20200705023755p:plain

設定が終わるとSQL Serverが自動で起動しました。
f:id:knkomko:20200705024056p:plain

5. 構成が完了したら、サービスが実行されていることを確認します。
systemctl status mssql-server --no-pager

コマンドを実行すると running と表記があり、起動している事を確認できました。
f:id:knkomko:20200705024537p:plain

6. リモート接続を計画している場合は、必要に応じてファイアウォールSQL ServerTCP ポート (既定値は 1433) も開きます。

TCPポート1433を開くとManagement Studioから接続を行う事ができました。