クイック スタート:Azure CLI を使用した Azure Database for MySQL サーバーの作成
適用対象: Azure Database for MySQL - 単一サーバー
重要
Azure Database for MySQL シングル サーバーは廃止パスにあります。 Azure Database for MySQL フレキシブル サーバーにアップグレードすることを強くお勧めします。 Azure Database for MySQL フレキシブル サーバーへの移行の詳細については、Azure Database for MySQL シングル サーバーの現状に関するページを参照してください
ヒント
よりシンプルな az mysql up Azure CLI コマンド (現在はプレビュー段階) の使用を検討してください。 こちらのクイック スタート をお試しください。
このクイック スタートでは、Azure Cloud Shell の Azure CLI コマンドを使用して、Azure Database for MySQL サーバーを 5 分で作成する方法について説明します。
Azure サブスクリプションをお持ちでない場合は、開始する前に Azure 無料アカウントを作成してください。
前提条件
Azure Cloud Shell で Bash 環境を使用します。 詳細については、「Azure Cloud Shell の Bash のクイックスタート」を参照してください。
CLI リファレンス コマンドをローカルで実行する場合、Azure CLI をインストールします。 Windows または macOS で実行している場合は、Docker コンテナーで Azure CLI を実行することを検討してください。 詳細については、「Docker コンテナーで Azure CLI を実行する方法」を参照してください。
ローカル インストールを使用する場合は、az login コマンドを使用して Azure CLI にサインインします。 認証プロセスを完了するには、ターミナルに表示される手順に従います。 その他のサインイン オプションについては、Azure CLI でのサインインに関するページを参照してください。
初回使用時にインストールを求められたら、Azure CLI 拡張機能をインストールします。 拡張機能の詳細については、Azure CLI で拡張機能を使用する方法に関するページを参照してください。
az version を実行し、インストールされているバージョンおよび依存ライブラリを検索します。 最新バージョンにアップグレードするには、az upgrade を実行します。
このクイックスタートには、Azure CLI のバージョン 2.0 以降が必要です。 Azure Cloud Shell を使用している場合は、最新バージョンが既にインストールされています。
az account set コマンドを使用して、アカウントの特定のサブスクリプションを選択します。 コマンドの subscription 引数の値として使用する、az login 出力の id 値をメモしておきます。 複数のサブスクリプションをお持ちの場合は、リソースが課金の対象となる適切なサブスクリプションを選択してください。 すべてのサブスクリプションを取得するには、az account list を使用します。
az account set --subscription <subscription id>
Azure Database for MySQL サーバーの作成
az group create コマンドを使用して、Azure リソース グループを作成し、このリソース グループ内に MySQL サーバーを作成します。 一意の名前を指定する必要があります。 次の例では、westus
の場所に myresourcegroup
という名前のリソース グループを作成します。
az group create --name myresourcegroup --location westus
az mysql server create コマンドを使用して、Azure Database for MySQL サーバーを作成します。 1 つのサーバーに複数のデータベースを含めることができます。
az mysql server create --resource-group myresourcegroup --name mydemoserver --location westus --admin-user myadmin --admin-password <server_admin_password> --sku-name GP_Gen5_2
上記の引数の詳細を次に示します。
設定 | 値の例 | 説明 |
---|---|---|
name | mydemoserver | Azure Database for MySQL サーバーの一意の名前を入力します。 サーバー名に含めることができるのは、英小文字、数字、およびハイフン (-) のみであり、 3 ~ 63 文字にする必要があります。 |
resource-group | myresourcegroup | Azure リソース グループの名前を指定します。 |
location | westus | サーバーの Azure の場所。 |
admin-user | myadmin | 管理者ログインのユーザー名。 これを azure_superuser、admin、administrator、root、guest、public にすることはできません。 |
admin-password | セキュリティで保護されたパスワード | 管理者ユーザーのパスワード。 8 ~ 128 文字にする必要があります。 パスワードには、英大文字、英小文字、数字、英数字以外の文字のうち、3 つのカテゴリの文字が含まれている必要があります。 |
sku-name | GP_Gen5_2 | 価格レベルとコンピューティング構成の名前を入力します。 省略表現の {価格レベル} {コンピューティング世代} {仮想コア} という規則に従います。 詳細については、価格レベルに関するページを参照してください。 |
重要
- サーバーの既定の MySQL バージョンは 5.7 です。 現在、5.6 と 8.0 のバージョンも使用できます。
- az mysql server create コマンドのすべての引数を確認するには、このリファレンス ドキュメントを参照してください。
- サーバーでは、既定で SSL が有効になっています。 SSL の詳細については、SSL 接続の構成に関するページを参照してください
サーバーレベルのファイアウォール規則の構成
既定では、作成された新しいサーバーはファイアウォール規則で保護され、パブリックにアクセスすることはできません。 az mysql server firewall-rule create コマンドを使用して、サーバーでファイアウォール規則を構成できます。 これにより、サーバーにローカルで接続できるようになります。
次の例では、特定の IP アドレス 192.168.0.1 からの接続を許可する、AllowMyIP
と呼ばれるファイアウォール規則を作成しています。 接続元となる IP アドレスを置き換えてください。 必要に応じて、IP アドレスの範囲を使用できます。 IP アドレスの検索方法がわからない場合は、https://whatismyipaddress.com/ にアクセスして IP アドレスを取得してください。
az mysql server firewall-rule create --resource-group myresourcegroup --server mydemoserver --name AllowMyIP --start-ip-address 192.168.0.1 --end-ip-address 192.168.0.1
Note
Azure Database for MySQL との接続では、ポート 3306 が通信に使用されます。 企業ネットワーク内から接続を試みる場合、ポート 3306 での送信トラフィックが許可されていない場合があります。 その場合、会社の IT 部門によってポート 3306 が開放されない限り、サーバーに接続することはできません。
接続情報の取得
サーバーに接続するには、ホスト情報とアクセス資格情報を提供する必要があります。
az mysql server show --resource-group myresourcegroup --name mydemoserver
結果は JSON 形式です。 fullyQualifiedDomainName と administratorLogin の値を書き留めておきます。
{
"administratorLogin": "myadmin",
"earliestRestoreDate": null,
"fullyQualifiedDomainName": "mydemoserver.mysql.database.azure.com",
"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myresourcegroup/providers/Microsoft.DBforMySQL/servers/mydemoserver",
"location": "westus",
"name": "mydemoserver",
"resourceGroup": "myresourcegroup",
"sku": {
"capacity": 2,
"family": "Gen5",
"name": "GP_Gen5_2",
"size": null,
"tier": "GeneralPurpose"
},
"sslEnforcement": "Enabled",
"storageProfile": {
"backupRetentionDays": 7,
"geoRedundantBackup": "Disabled",
"storageMb": 5120
},
"tags": null,
"type": "Microsoft.DBforMySQL/servers",
"userVisibleState": "Ready",
"version": "5.7"
}
mysql コマンドライン クライアントを使用して Azure Database for MySQL サーバーに接続する
Azure Cloud Shell で、一般的なクライアント ツールの mysql.exe コマンドライン ツールを使用して、サーバーに接続できます。 あるいは、ローカル環境で mysql コマンド ラインを使用することもできます。
mysql -h mydemoserver.mysql.database.azure.com -u myadmin@mydemoserver -p
リソースをクリーンアップする
これらのリソースが別のクイック スタート/チュートリアルで不要である場合、次のコマンドで削除することができます。
az group delete --name myresourcegroup
新しく作成した 1 つのサーバーを削除するだけの場合は、az mysql server delete コマンドを実行してください。
az mysql server delete --resource-group myresourcegroup --name mydemoserver