はじめに
SQL Serverは、Microsoftによって開発されたリレーショナルデータベース管理ツールです。 Windows、Linux、macOS、およびDockerデプロイメントとして利用できます。
このチュートリアルでは、SQLServer2019をMacOSにDockerデプロイメントとしてインストールする方法を示します。
前提条件
- macOSCatalina以降を実行しているシステム
- 管理者レベルの権限を持つユーザー
- ターミナルウィンドウへのアクセス
Dockerのインストールと構成
1.公式のDockerダウンロードページからDockerCommunityEditionインストールファイルをダウンロードします。ハードウェアに応じて、 Get Docker Desktop for Macで適切なリンクを選択します ダウンロードを開始するセクション。
2. .dmg
をダブルクリックします インストールプロセスを開始するファイル。これが完了したら、 Docker.appをドラッグします アプリケーションのアイコン sフォルダ。
3. Dockerを起動し、 Dockerを開きます メニューバーのDockerアイコンをクリックしてドロップダウンメニューを表示します。
4.設定を選択します 。
5.リソースを開きます 設定の左側にあるタブ 画面。
6.メモリを増やします 4.00GBまでの値。
7.完了したら、[適用して再起動]をクリックします 新しい設定を確認するには:
MacにSQLServerをインストールする
次の手順に従って、SQLServerをDockerコンテナとして設定します。
ステップ1:SQLServerイメージをダウンロードする
ターミナルウィンドウで次のコマンドを実行して、SQLServer2019のイメージをダウンロードします。
sudo docker pull mcr.microsoft.com/mssql/server:2019-latest
ステップ2:DockerでSQLServerイメージを起動する
Dockerでダウンロードしたイメージを起動するには、次を使用します:
docker run -d --name example_sql_server -e 'ACCEPT_EULA=Y' -e 'SA_PASSWORD=Strong.Pwd-123' -p 1433:1433 mcr.microsoft.com/mssql/server:2019-latest
上記のコマンドの場合:
-
-d
:Dockerコンテナをデーモンモードで起動し、ターミナルウィンドウを開かなくてもバックグラウンドで実行できるようにします。 -名前コード>
:Dockerコンテナの名前を設定します。この例では、 example_sql_serverを使用しています。 。-
-e'ACCEPT_EULA =Y'
:DockerのEULA(エンドユーザー使用許諾契約)に同意することを確認します。 -
-e'SA_PASSWORD =Strong.Pwd-123'
:データベースのパスワードを設定します。この例では、 "Strong.Pwd-123"を使用しています。 パスワードとして。 -
-p 1433:1433
:コンテナをローカルポート1433にマップします。 -
mcr.microsoft.com/mssql/server:2019-latest
: Dockerが使用するイメージファイルを選択します。
ステップ3:SQLServerDockerコンテナを確認する
次のコマンドでSQLServerDockerコンテナのステータスを確認します。
docker ps -a
ステータス
の場合 コンテナの出力の列にUp
と表示されます 、コンテナは実行中です。 終了
と表示されている場合 、コンテナは実行されなくなったため、トラブルシューティングが必要です。
ステップ4:SQLServerコマンドラインツールをインストールする
次のコマンドを使用してsql-cliをインストールします。
sudo npm install -g sql-cli
sql-cli は、ターミナルウィンドウでSQLServerインスタンスのコマンドとクエリを実行できるコマンドラインツールです。
ステップ5:SQLServerに接続する
mssql
を使用してSQLServerに接続します ターミナルウィンドウのコマンド:
mssql -u sa -p Strong.Pwd-123
場所:
-
-u
:データベースに接続するためのユーザー名を定義します。この例では、デフォルトのユーザー名 "sa"を使用しています。 。 -
-p
:データベースにログインするためのパスワードを定義します。この例では、 "Strong.Pwd-123"を使用しています。 、SQLServerDockerコンテナの起動時に選択しました。
ARMベースのMac用のSQLAlternativeをインストールする
SQLサーバーのDockerイメージはamd64アーキテクチャのみをサポートしているため、ARMベースのMacマシンで実行しようとするとエラーが発生します。ただし、主にIoTエッジ展開用に設計された同様のRDBMツールであるAzure SQL Edgeは、完全に機能する代替手段として使用できます。
以下の手順に従って、AzureSQLEdgeをインストールします。
ステップ1:Dockerイメージをプルする
AzureSQLEdgeイメージをシステムにダウンロードします。
docker pull mcr.microsoft.com/azure-sql-edge
ステップ2:Dockerコンテナを実行する
イメージがマシンに正常にダウンロードされたら、次のコマンドを使用してコンテナを実行します。
sudo docker run --cap-add SYS_PTRACE -e 'ACCEPT_EULA=Y' -e 'MSSQL_SA_PASSWORD=Strong.Pwd-123' -p 1433:1433 --name sqledge -d mcr.microsoft.com/azure-sql-edge
ステップ3:コンテナを確認する
AzureSQLEdgeコンテナが正しく実行されていることを確認します。
docker ps
ステップ4:Bashシェルを使用してコンテナにアクセスする
コンテナーが実行されている状態で、 docker exec
を使用してAzureSQLEdgeに接続できます。 コマンド:
sudo docker exec -it sqledge "bash"
ステップ5:データベースに接続する
コンテナ内に入ったら、sqlcmdツールを使用してデータベースに接続します。
/opt/mssql-tools/bin/sqlcmd -S localhost -U SA
プロンプトが表示されたら、手順2で指定したパスワードを入力します 。
データベースプロンプトが表示されます。これで、MSSQLを使用するのと同じ方法でAzureSQLを使用できます。