クイック スタート:Azure CLI を使用した Azure Database for MySQL サーバーの作成Quickstart: Create an Azure Database for MySQL server using Azure CLI

ヒント

よりシンプルな az mysql up Azure CLI コマンド (現在はプレビュー段階) の使用を検討してください。Consider using the simpler az mysql up Azure CLI command (currently in preview). こちらのクイック スタート をお試しください。Try out the quickstart.

このクイック スタートでは、Azure CLI を使用して、約 5 分で Azure Database for MySQL サーバーを Azure リソース グループに作成する方法を説明します。This quickstart describes how to use the Azure CLI to create an Azure Database for MySQL server in an Azure resource group in about five minutes. Azure CLI は、コマンドラインやスクリプトで Azure リソースを作成および管理するために使用します。The Azure CLI is used to create and manage Azure resources from the command line or in scripts.

Azure サブスクリプションをお持ちでない場合は、開始する前に無料アカウントを作成してください。If you don't have an Azure subscription, create a free account before you begin.

Azure Cloud Shell を使用するUse Azure Cloud Shell

Azure では、ブラウザーを介して使用できる対話型のシェル環境、Azure Cloud Shell がホストされています。Azure hosts Azure Cloud Shell, an interactive shell environment that you can use through your browser. Cloud Shell では、bashPowerShell のいずれかを使用して Azure サービスを操作できます。Cloud Shell lets you use either bash or PowerShell to work with Azure services. ローカル環境に何もインストールしなくても、Cloud Shell にプレインストールされているコマンドを使用して、この記事のコードを実行できます。You can use the Cloud Shell pre-installed commands to run the code in this article without having to install anything on your local environment.

Azure Cloud Shell を起動するには:To launch Azure Cloud Shell:

オプションOption 例とリンクExample/Link
コード ブロックの右上隅にある [使ってみる] を選択します。Select Try It in the upper-right corner of a code block. [試してみる] を選択しても、コードは Cloud Shell に自動的にコピーされません。Selecting Try It doesn't automatically copy the code to Cloud Shell. Azure Cloud Shell の [使ってみる] の例
https://shell.azure.com に移動するか、 [Cloud Shell を起動する] ボタンを選択して、ブラウザーで Cloud Shell を開きます。Go to https://shell.azure.com or select the Launch Cloud Shell button to open Cloud Shell in your browser. 新しいウィンドウで Cloud Shell を起動するLaunch Cloud Shell in a new window
Azure portal の右上にあるメニュー バーの [Cloud Shell] ボタンを選択します。Select the Cloud Shell button on the top-right menu bar in the Azure portal. Azure Portal の [Cloud Shell] ボタン

Azure Cloud Shell でこの記事のコードを実行するには:To run the code in this article in Azure Cloud Shell:

  1. Cloud Shell を起動します。Launch Cloud Shell.

  2. [コピー] ボタンを選択して、コード ブロックをコードにコピーします。Select the Copy button on a code block to copy the code.

  3. Windows と Linux では Ctrl + Shift + V キー、macOS では Cmd + Shift + V キーを使用して、コードを Cloud Shell セッションに貼り付けます。Paste the code into the Cloud Shell session with Ctrl+Shift+V on Windows and Linux, or Cmd+Shift+V on macOS.

  4. Enter キーを押して、コードを実行します。Press Enter to run the code.

CLI をローカルにインストールして使用する場合、この記事では、Azure CLI バージョン 2.0 以降を実行していることが要件です。If you choose to install and use the CLI locally, this article requires that you are running the Azure CLI version 2.0 or later. バージョンを確認するには、az --version を実行します。Run az --version to find the version. インストールまたはアップグレードする必要がある場合は、Azure CLI のインストールに関するページを参照してください。If you need to install or upgrade, see Install Azure CLI.

複数のサブスクリプションをお持ちの場合は、リソースが存在するか、課金の対象となっている適切なサブスクリプションを選択してください。If you have multiple subscriptions, choose the appropriate subscription in which the resource exists or is billed for. az account set コマンドを使用して、アカウントの特定のサブスクリプション ID を選択します。Select a specific subscription ID under your account using az account set command.

az account set --subscription 00000000-0000-0000-0000-000000000000

リソース グループの作成Create a resource group

az group create コマンドで Azure リソース グループを作成します。Create an Azure resource group using the az group create command. リソース グループとは、複数の Azure リソースをまとめてデプロイ、管理する際の論理コンテナーです。A resource group is a logical container into which Azure resources are deployed and managed as a group.

次の例では、myresourcegroup という名前のリソース グループを westus の場所に作成します。The following example creates a resource group named myresourcegroup in the westus location.

az group create --name myresourcegroup --location westus

Azure Database for MySQL サーバーの作成Create an Azure Database for MySQL server

az mysql server create コマンドを使用して、Azure Database for MySQL サーバーを作成します。Create an Azure Database for MySQL server with the az mysql server create command. 1 つのサーバーで複数のデータベースを管理できます。A server can manage multiple databases. 通常は、プロジェクトまたはユーザーごとに個別のデータベースを使用します。Typically, a separate database is used for each project or for each user.

設定Setting 値の例Sample value 説明Description
namename mydemoservermydemoserver Azure Database for MySQL サーバーを識別する一意の名前を選択します。Choose a unique name that identifies your Azure Database for MySQL server. サーバー名に含めることができるのは、英小文字、数字、およびハイフン (-) のみであり、The server name can contain only lowercase letters, numbers, and the hyphen (-) character. 3 ~ 63 文字にする必要があります。It must contain from 3 to 63 characters.
resource-groupresource-group myresourcegroupmyresourcegroup Azure リソース グループの名前を指定します。Provide the name of the Azure resource group.
sku-namesku-name GP_Gen5_2GP_Gen5_2 SKU の名前。The name of the sku. 省略表現の {価格レベル}_{コンピューティング世代}_{仮想コア} という規則に従います。Follows the convention {pricing tier}_{compute generation}_{vCores} in shorthand. sku-name パラメーターの詳細については、この表の下方を参照してください。See below this table for more information about the sku-name parameter.
backup-retentionbackup-retention 77 バックアップを保持する必要のある時間。How long a backup should be retained. 単位は日数です。Unit is days. 範囲は 7 ~ 35 です。Range is 7-35.
geo-redundant-backupgeo-redundant-backup DisabledDisabled このサーバーに対して geo 冗長バックアップを有効にする必要があるかどうかどうか。Whether geo-redundant backups should be enabled for this server or not. 使用できる値は以下の通りです。Enabled、DisabledAllowed values: Enabled, Disabled.
locationlocation westuswestus サーバーの Azure の場所。The Azure location for the server.
ssl-enforcementssl-enforcement EnabledEnabled このサーバーに対して ssl を有効にする必要があるかどうかどうか。Whether ssl should be enabled or not for this server. 使用できる値は以下の通りです。Enabled、DisabledAllowed values: Enabled, Disabled.
storage-sizestorage-size 5120051200 サーバーのストレージ容量 (単位はメガバイト)。The storage capacity of the server (unit is megabytes). 有効な storage-size は最小 5,120 MB で、1,024 MB ずつ増加します。Valid storage-size is minimum 5120MB and increases in 1024MB increments. ストレージ サイズの制限の詳細については、価格レベルについてのドキュメントを参照してください。See the pricing tiers document for more information about storage size limits.
versionversion 5.75.7 MySQL のメジャー バージョン。The MySQL major version.
admin-useradmin-user myadminmyadmin 管理者ログインのユーザー名。The username for the administrator login. これを azure_superuseradminadministratorrootguestpublic にすることはできません。It cannot be azure_superuser, admin, administrator, root, guest, or public.
admin-passwordadmin-password セキュリティで保護されたパスワードsecure password 管理者ユーザーのパスワード。The password of the administrator user. 8 ~ 128 文字にする必要があります。It must contain between 8 and 128 characters. パスワードには、英大文字、英小文字、数字、英数字以外の文字のうち、3 つのカテゴリの文字が含まれている必要があります。Your password must contain characters from three of the following categories: English uppercase letters, English lowercase letters, numbers, and non-alphanumeric characters.

sku-name パラメーターの値は、次の例のように、{価格レベル}_{コンピューティング世代}_{仮想コア数} という規約に従います。The sku-name parameter value follows the convention {pricing tier}_{compute generation}_{vCores} as in the examples below:

  • --sku-name B_Gen5_1 は、"Basic、Gen 5、および 1 個の仮想コア" にマップされます。--sku-name B_Gen5_1 maps to Basic, Gen 5, and 1 vCore. このオプションは、利用できる最小の SKU です。This option is the smallest SKU available.
  • --sku-name GP_Gen5_32 は、"汎用、Gen 5、および 32 個の仮想コア" にマップされます。--sku-name GP_Gen5_32 maps to General Purpose, Gen 5, and 32 vCores.
  • --sku-name MO_Gen5_2 は、"メモリ最適化、Gen 5、および 2 個の仮想コア" にマップされます。--sku-name MO_Gen5_2 maps to Memory Optimized, Gen 5, and 2 vCores.

リージョンごとおよびレベルごとに有効な値を理解するには、価格レベルのドキュメントを参照してください。Please see the pricing tiers documentation to understand the valid values per region and per tier.

次の例では、サーバー管理者ログイン myadmin を使用して、リソース グループ myresourcegroupmydemoserver という名前の MySQL 5.7 サーバーを米国西部に作成します。The following example creates a MySQL 5.7 server in West US named mydemoserver in your resource group myresourcegroup with server admin login myadmin. これは、2 つの仮想コアを備えた Gen 4 汎用サーバーです。This is a Gen 4 General Purpose server with 2 vCores. <server_admin_password> は独自の値に置き換えます。Substitute the <server_admin_password> with your own value.

az mysql server create --resource-group myresourcegroup --name mydemoserver  --location westus --admin-user myadmin --admin-password <server_admin_password> --sku-name GP_Gen5_2 --version 5.7

注意

低負荷なコンピューティングと I/O がワークロードに適している場合は、Basic 価格レベルの使用を検討してください。Consider using the Basic pricing tier if light compute and I/O are adequate for your workload. Basic 価格レベルで作成されたサーバーは後で General Purpose またはメモリ最適化にスケーリングできないことに注意してください。Note that servers created in the Basic pricing tier cannot later be scaled to General Purpose or Memory Optimized. 詳細については、価格に関するページを参照してください。See the pricing page for more information.

ファイアウォール規則の構成Configure firewall rule

az mysql server firewall-rule create コマンドで、Azure Database for MySQL サーバーレベルのファイアウォール規則を作成します。Create an Azure Database for MySQL server-level firewall rule using the az mysql server firewall-rule create command. サーバーレベルのファイアウォール規則により、mysql.exe コマンド ライン ツールや MySQL Workbench などの外部アプリケーションが、Azure MySQL service ファイアウォールを経由してサーバーに接続できるようになります。A server-level firewall rule allows an external application, such as the mysql.exe command-line tool or MySQL Workbench to connect to your server through the Azure MySQL service firewall.

次の例では、特定の IP アドレス 192.168.0.1 からの接続を許可する、AllowMyIP と呼ばれるファイアウォール規則を作成しています。The following example creates a firewall rule called AllowMyIP that allows connections from a specific IP address, 192.168.0.1. 実際の接続元となる場所に対応する IP アドレスまたは IP アドレスの範囲に置き換えてください。Substitute in the IP address or range of IP addresses that correspond to where you'll be connecting from.

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

注意

Azure Database for MySQL との接続では、ポート 3306 が通信に使用されます。Connections to Azure Database for MySQL communicate over port 3306. 企業ネットワーク内から接続を試みる場合、ポート 3306 での送信トラフィックが許可されていない場合があります。If you try to connect from within a corporate network, outbound traffic over port 3306 might not be allowed. その場合、会社の IT 部門によってポート 3306 が開放されない限り、サーバーに接続することはできません。If this is the case, you can't connect to your server unless your IT department opens port 3306.

SSL 設定の構成Configure SSL settings

既定では、サーバーとクライアント アプリケーション間で SSL 接続が適用されます。By default, SSL connections between your server and client applications are enforced. この既定値では、インターネットでのデータ ストリームを暗号化することによって、"インモーション" データのセキュリティが確保されます。This default ensures security of "in-motion" data by encrypting the data stream over the internet. このクイック スタートを簡略化するため、サーバーの SSL 接続を無効にします。To make this quick start easier, disable SSL connections for your server. 実稼働サーバーで SSL を無効にすることはお勧めしません。Disabling SSL is not recommended for production servers. 詳細については、「Azure Database for MySQL に安全に接続するためにアプリケーションで SSL 接続を構成する」を参照してください。For more information, see Configure SSL connectivity in your application to securely connect to Azure Database for MySQL.

次の例は、MySQL サーバー上で SSL の適用を無効にします。The following example disables enforcing SSL on your MySQL server.

az mysql server update --resource-group myresourcegroup --name mydemoserver --ssl-enforcement Disabled

接続情報の取得Get the connection information

サーバーに接続するには、ホスト情報とアクセス資格情報を提供する必要があります。To connect to your server, you need to provide host information and access credentials.

az mysql server show --resource-group myresourcegroup --name mydemoserver

結果は JSON 形式です。The result is in JSON format. fullyQualifiedDomainNameadministratorLogin の値を書き留めておきます。Make a note of the fullyQualifiedDomainName and 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.exe コマンドライン ツールを使用したサーバーへの接続Connect to the server using the mysql.exe command-line tool

mysql.exe コマンドライン ツールを使用してサーバーに接続します。Connect to your server using the mysql.exe command-line tool. MySQL をここからダウンロードして、コンピューターにインストールすることができます。You can download MySQL from here and install it on your computer.

次のコマンドを入力します。Type the next commands:

  1. mysql コマンドライン ツールを使用してサーバーに接続します。Connect to the server using mysql command-line tool:

    mysql -h mydemoserver.mysql.database.azure.com -u myadmin@mydemoserver -p
    
  2. サーバーの状態を表示します。View server status:

    mysql> status
    

    すべてが問題ない場合は、コマンドライン ツールの出力は次のようになります。If everything goes well, the command-line tool should output the following text:

C:\Users\>mysql -h mydemoserver.mysql.database.azure.com -u myadmin@mydemoserver -p
Enter password: ***********
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 65512
Server version: 5.6.26.0 MySQL Community Server (GPL)

Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> status
--------------
mysql  Ver 14.14 Distrib 5.6.35, for Win64 (x86_64)

Connection id:          65512
Current database:
Current user:           myadmin@116.230.243.143
SSL:                    Not in use
Using delimiter:        ;
Server version:         5.6.26.0 MySQL Community Server (GPL)
Protocol version:       10
Connection:             mydemoserver.mysql.database.azure.com via TCP/IP
Server characterset:    latin1
Db     characterset:    latin1
Client characterset:    gbk
Conn.  characterset:    gbk
TCP port:               3306
Uptime:                 2 days 9 hours 47 min 20 sec

Threads: 4  Questions: 34833  Slow queries: 2  Opens: 84  Flush tables: 4  Open tables: 1  Queries per second avg: 0.167
--------------

mysql>

ヒント

その他のコマンドについては、「MySQL 5.7 リファレンス マニュアル - 4.5.1 章」を参照してください。For additional commands, see MySQL 5.7 Reference Manual - Chapter 4.5.1.

MySQL Workbench GUI ツールを使用したサーバーへの接続Connect to the server using the MySQL Workbench GUI tool

  1. クライアント コンピューターで MySQL Workbench アプリケーションを起動します。Launch the MySQL Workbench application on your client computer. MySQL Workbench はここからダウンロードしてインストールできます。You can download and install MySQL Workbench from here.

  2. [Setup New Connection] (新しい接続のセットアップ) ダイアログ ボックスで、次の情報を [Parameters] (パラメーター) タブに入力します。In the Setup New Connection dialog box, enter the following information on Parameters tab:

    新しい接続のセットアップ

設定Setting 推奨値Suggested Value 説明Description
接続名Connection Name My ConnectionMy Connection この接続のラベルを指定します (任意に指定できます)Specify a label for this connection (this can be anything)
接続方法Connection Method Standard (TCP/IP) を選択しますchoose Standard (TCP/IP) TCP/IP プロトコルを使用して Azure Database for MySQL に接続しますUse TCP/IP protocol to connect to Azure Database for MySQL>
ホスト名Hostname mydemoserver.mysql.database.azure.commydemoserver.mysql.database.azure.com 前にメモしておいたサーバー名です。Server name you previously noted.
PortPort 33063306 MySQL の既定のポートが使用されます。The default port for MySQL is used.
ユーザー名Username myadmin@mydemoserver 前にメモしておいたサーバーの管理者ログインです。The server admin login you previously noted.
パスワードPassword **** 前に構成した管理者アカウントのパスワードを使用します。Use the admin account password you configured earlier.

[Test Connection] (接続のテスト) をクリックして、すべてのパラメーターが正しく構成されているかをテストします。Click Test Connection to test if all parameters are correctly configured. これで、接続をクリックしてサーバーに正常に接続できます。Now, you can click the connection to successfully connect to the server.

リソースのクリーンアップClean up resources

これらのリソースが別のクイック スタート/チュートリアルで不要である場合、次のコマンドで削除することができます。If you don't need these resources for another quickstart/tutorial, you can delete them by doing the following command:

az group delete --name myresourcegroup

新しく作成した 1 つのサーバーを削除するだけの場合は、 az mysql server delete コマンドを実行してください。If you would just like to delete the one newly created server, you can run az mysql server delete command.

az mysql server delete --resource-group myresourcegroup --name mydemoserver

次の手順Next steps