Azure CLI を使用した Azure Database for MySQL - フレキシブル サーバーのサーバー パラメーターの一覧表示と変更
適用対象: Azure Database for MySQL - フレキシブル サーバー
このサンプル CLI スクリプトを使用すると、Azure Database for MySQL - フレキシブル サーバーに使用できるサーバー パラメーターとそれに使用できる値がすべて一覧表示され、max_connections とグローバル time_zone パラメーターが既定値以外の値に設定されます。
Azure サブスクリプションをお持ちでない場合は、開始する前に Azure 無料アカウントを作成してください。 現在、Azure 無料アカウントがあれば、Azure Database for MySQL - フレキシブル サーバーを 12 か月間無料でお試しいただけます。 詳細については、Azure Database for MySQL - フレキシブル サーバーの無料トライアルに関するページを参照してください。
前提条件
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 Cloud Shell を起動する
Azure Cloud Shell は無料のインタラクティブ シェルです。この記事の手順は、Azure Cloud Shell を使って実行することができます。 一般的な Azure ツールが事前にインストールされており、アカウントで使用できるように構成されています。
Cloud Shell を開くには、コード ブロックの右上隅にある [使ってみる] を選択します。 https://shell.azure.com に移動して、別のブラウザー タブで Cloud Shell を起動することもできます。
Cloud Shell が開いたら、お使いの環境に対して Bash が選択されていることを確認します。 後続のセッションでは、Bash 環境で Azure CLI を使用します。[コピー] を選択してコードのブロックをコピーし、Cloud Shell に貼り付けます。その後、Enter キーを押してそれを実行します。
Azure へのサインイン
Cloud Shell は、サインインした最初のアカウントで自動的に認証されます。 別のサブスクリプションを使用してサインインするには、次のスクリプトを使用し、<Subscription ID>
をご使用の Azure サブスクリプション ID に置き換えます。 Azure サブスクリプションをお持ちでない場合は、開始する前に Azure 無料アカウントを作成してください。
subscription="<subscriptionId>" # add subscription here
az account set -s $subscription # ...or use 'az login'
詳細については、アクティブなサブスクリプションの設定または対話形式のログインに関する記事を参照してください
スクリプトを実行する
# Change server parameters for Azure Database for MySQL - Flexible Server
# Variable block
let "randomIdentifier=$RANDOM*$RANDOM"
location="East US"
resourceGroup="msdocs-mysql-rg-$randomIdentifier"
tag="configure-audit-logs-mysql"
server="msdocs-mysql-server-$randomIdentifier"
login="azureuser"
password="Pa$$w0rD-$randomIdentifier"
ipAddress="None"
# Specifying an IP address of 0.0.0.0 allows public access from any resources
# deployed within Azure to access your server. Setting it to "None" sets the server
# in public access mode but does not create a firewall rule.
# For your public IP address, https://whatismyipaddress.com
echo "Using resource group $resourceGroup with login: $login, password: $password..."
# Create a resource group
echo "Creating $resourceGroup in $location..."
az group create --name $resourceGroup --location "$location" --tags $tag
# Create a MySQL Flexible server in the resource group
echo "Creating $server"
az mysql flexible-server create --name $server --resource-group $resourceGroup --location "$location" --admin-user $login --admin-password $password --public-access $ipAddress
# Optional: Add firewall rule to connect from all Azure services
# To limit to a specific IP address or address range, change start-ip-address and end-ip-address
echo "Adding firewall for IP address range"
az mysql flexible-server firewall-rule create --name $server --resource-group $resourceGroup --rule-name AllowAzureIPs --start-ip-address 0.0.0.0 --end-ip-address 0.0.0.0
# List all MySQL - Flexible Server parameters with their values and parameter descriptions
echo "List parameters and values"
az mysql flexible-server parameter list --resource-group $resourceGroup --server-name $server
# Set value of max_connections parameter
echo "Set maximum connections"
az mysql flexible-server parameter set --resource-group $resourceGroup --server-name $server --name max_connections --value 250
# Check value of max_connections paramater
echo "Check maximum connections"
az mysql flexible-server parameter show --resource-group $resourceGroup --server-name $server --name max_connections
# Set value of max_connections parameter back to default
echo "Set maximum connnections to default"
az mysql flexible-server parameter set --resource-group $resourceGroup --server-name $server --name max_connections
# Set global level time zone
echo "Set time zone"
az mysql flexible-server parameter set --resource-group $resourceGroup --server-name $server --name time_zone --value "+02:00"
# Check global level time zone
echo "Check time zone"
az mysql flexible-server parameter show --resource-group $resourceGroup --server-name $server --name time_zone
リソースをクリーンアップする
次のように az group delete コマンドを使用して、リソース グループと、それに関連付けられているすべてのリソースを削除します。ただし、これらのリソースが継続的に必要でない場合に限ります。 これらのリソースの一部は、削除や作成に時間がかかる場合があります。
az group delete --name $resourceGroup
サンプル リファレンス
このスクリプトでは、次のコマンドを使用します。 表内の各コマンドは、それぞれのドキュメントにリンクされています。
コマンド | 注 |
---|---|
az group create | すべてのリソースを格納するリソース グループを作成します。 |
az mysql flexible-server create | データベースをホストするフレキシブル サーバーを作成します。 |
az mysql flexible-server parameter list | フレキシブル サーバーのパラメーター値を一覧表示します。 |
az mysql flexible-server parameter set | フレキシブル サーバーのパラメーターを更新します。 |
az mysql flexible-server parameter show | フレキシブル サーバーの特定のパラメーター値を取得します。 |
az mysql flexible-server delete | フレキシブル サーバーを削除します。 |
az group delete | 入れ子になったリソースすべてを含むリソース グループを削除します。 |
次のステップ
- 他のスクリプトを試す: Azure Database for MySQL - フレキシブル サーバーの Azure CLI サンプル
- Azure CLI の詳細については、Azure CLI のドキュメントのページをご覧ください。