インスタンスを作成する

このページでは、Cloud SQL for MySQL インスタンス(第 1 世代または第 2 世代)を作成する方法を説明します。

すべてのインスタンスの設定について詳しくは、インスタンスの設定をご覧ください。

第 2 世代のインスタンスを作成する

第 2 世代インスタンスを作成するには:

Console(第 2 世代)

  1. Google Cloud Console の Cloud SQL インスタンス ページに移動します。

    [Cloud SQL インスタンス] ページに移動

  2. [インスタンスを作成] をクリックします。
  3. [MySQL] を選択して [次へ] をクリックします。
  4. 名前を入力します。

    インスタンス名には機密情報や個人を特定できる情報を含めないでください。インスタンス名は外部から閲覧可能です。

    インスタンス名にプロジェクト ID を含める必要はありません。この処理は必要に応じて自動的に行われます(ログファイルの場合など)。

    注: 削除したインスタンスのインスタンス名は、削除してから 1 週間過ぎるまで再利用できません。

  5. 'root'@'%' ユーザーのパスワードを入力します。
  6. インスタンスのリージョンを設定します。

    インスタンスにアクセスするリソースと同じリージョンにインスタンスを配置します。ほとんどの場合、ゾーンを指定する必要はありません。

  7. [構成オプション] で、インスタンスに必要なその他の設定を更新します。
    設定
    データベースのバージョン
    データベースのバージョン MySQL 5.7(デフォルト)または 5.6。
    接続
    プライベート IP インスタンスのプライベート IP 接続を構成します。 詳細
    パブリック IP インスタンスのパブリック IPv4 アドレスを追加します。 詳細
    マシンタイプとストレージ
    マシンタイプ マシンタイプ(「層」とも呼ばれる)によって、CPU の数とインスタンスのメモリ量が決まります。 詳細
    ストレージの種類 インスタンスで SSD または HDD のどちらのストレージを使用するかを指定します。詳細
    ストレージ容量 インスタンスにプロビジョニングされているストレージ容量。 詳細
    ストレージの自動増量 空き領域が少なくなったときに、Cloud SQL が自動的にインスタンス用のストレージを増やすかどうかを指定します。詳細
    高可用性 高可用性向けにインスタンスを構成する必要がある場合は、[高可用性(リージョン)] チェックボックスをオンにする必要があります。詳細
    自動バックアップ バックアップを開始する時間枠。 詳細
    バイナリログ バイナリログを使用すると、レプリケーションとポイントインタイム リカバリが可能になります。詳細
    ネットワークの承認
    データベース フラグの追加
    データベース フラグ データベース フラグを使用して、インスタンスの設定とパラメータを制御できます。詳細
    メンテナンス スケジュール
    メンテナンスの時間枠 Cloud SQL がインスタンスに対し、中断メンテナンスを実行できる 1 時間の時間枠を指定します。この時間枠を設定しない場合、任意の時間に中断メンテナンスが行われる可能性があります。詳細
    メンテナンスのタイミング 希望するインスタンス更新のタイミング。同じプロジェクトの他のインスタンスとの相対的なタイミングです。詳細
  8. [作成] をクリックします。

gcloud(第 2 世代)

gcloud コマンドライン ツールのインストール方法と使用方法については、Cloud SDK のインストールをご覧ください。Cloud Shell の起動方法については、Cloud Shell のドキュメントをご覧ください。

  1. 使用できるマシンタイプのリストを表示します。
    gcloud sql tiers list
    

    db-」で始まるタイプがあります。第 2 世代インスタンスを作成するには、このタイプのマシンを選択する必要があります。

    各マシンタイプ、それぞれの機能、インスタンスの料金に対する影響については、料金ページをご覧ください。

  2. インスタンスを作成します。
    gcloud sql instances create [INSTANCE_NAME] --tier=[MACHINE_TYPE] --region=[REGION]
    

    インスタンス名には機密情報や個人を特定できる情報を含めないでください。インスタンス名は外部から閲覧可能です。
    インスタンス名にプロジェクト ID を含める必要はありません。この処理は必要に応じて自動的に行われます(ログファイルの場合など)。

    MACHINE_TYPE は、前のステップで取得した値のうち、db- で始まるものです。

    たとえば、次のコマンドは、ロンドン リージョンに、マシンタイプが db-n1-standard-2 で、instance1 という名前の第 2 世代インスタンスを作成します。

    gcloud sql instances create instance1 --tier=db-n1-standard-2 --region=europe-west2
    

    パラメータを追加して、他のインスタンス設定を指定できます。

    設定 パラメータ
    必須パラメータ
    データベースのバージョン --database-version MYSQL_5_7(デフォルト)または MYSQL_5_6
    リージョン --region 有効な値を参照してください
    接続
    プライベート IP --network このインスタンスに使用する VPC ネットワーク名を指定します。このネットワークに対して、プライベート サービス アクセスがすでに構成されている必要があります。ベータ版のコマンド(gcloud beta sql instances create)でのみ使用できます。詳細
    パブリック IP --authorized-networks パブリック IP 接続の場合は、承認済みネットワークからのみ、インスタンスに接続できます。詳細
    マシンタイプとストレージ
    マシンタイプ --tier マシンのタイプによって、CPU の数とインスタンスのメモリ量が決まります。有効な値を参照してください詳細
    ストレージの種類 --storage-type インスタンスで SSD または HDD のどちらのストレージを使用するかを指定します。詳細
    ストレージ容量 --storage-size インスタンスにプロビジョニングされているストレージ容量(GB 単位)。詳細
    ストレージの自動増量 --storage-auto-increase 空き領域が少なくなったときに、Cloud SQL が自動的にインスタンス用のストレージを増やすかどうかを指定します。詳細
    ストレージの自動増量の上限 --storage-auto-increase-limit Cloud SQL が自動的に増量できるストレージ容量の上限を指定します。ベータ版のコマンド(gcloud beta sql instances create)でのみ使用できます。詳細
    自動バックアップと高可用性
    高可用性 --failover-replica-name このパラメータを指定すると、新しいインスタンスのフェイルオーバー レプリカが作成されます。 詳細
    自動バックアップ --backup-start-time バックアップを開始する時間枠。 詳細
    バイナリログ --enable-bin-log バイナリログを使用すると、レプリケーションとポイントインタイム リカバリが可能になります。詳細
    データベース フラグの追加
    データベース フラグ --database-flags データベース フラグを使用して、インスタンスの設定とパラメータを制御できます。データベース フラグの詳細このパラメータの設定方法の詳細
    メンテナンス スケジュール
    メンテナンスの時間枠 --maintenance-window-day,
    --maintenance-window-hour
    Cloud SQL がインスタンスに対し、中断メンテナンスを実行できる 1 時間の時間枠を指定します。この時間枠を設定しない場合、任意の時間に中断メンテナンスが行われる可能性があります。詳細
    メンテナンスのタイミング --maintenance-release-channel 希望するインスタンス更新のタイミング。同じプロジェクトの他のインスタンスとの相対的なタイミングです。他のインスタンスより前に更新する場合は preview を使用し、後に更新する場合は production を使用します。詳細

  3. 自動的に割り当てられた IP アドレスをメモします。

    Cloud SQL Proxy を使用していない場合、アプリケーションまたはツールがインスタンスに接続するためのホストアドレスとしてこのアドレスが使用されます。

  4. 「root@%」MySQL ユーザーのパスワードを設定します。
    gcloud sql users set-password root % --instance [INSTANCE_NAME] --password [PASSWORD]
    

REST(第 2 世代)

1. インスタンスを作成する

この例では、バックアップおよびバイナリログを有効にしたインスタンスを作成します。これらの設定は任意です。この呼び出しのパラメータの一覧については、Instances:insert ページをご覧ください。リージョンやマシンタイプの有効な値など、インスタンスの設定の詳細については、インスタンスの設定をご覧ください。

インスタンス ID には機密情報や個人を特定できる情報を含めないでください。インスタンス ID は外部から閲覧可能です。
インスタンス名にプロジェクト ID を含める必要はありません。この処理は必要に応じて自動的に行われます(ログファイルの場合など)。

後述のリクエストのデータを使用する前に、次のように置き換えます。

  • project-id: プロジェクト ID
  • instance-id: 目的のインスタンス ID
  • region: 目的のリージョン
  • machine-type: 目的のマシンタイプ

HTTP メソッドと URL:

POST https://www.googleapis.com/sql/v1beta4/projects/project-id/instances

JSON 本文のリクエスト

{
  "name": "instance-id",
  "region": "region",
  "settings": {
    "tier": "machine-type",
    "backupConfiguration": {
      "binaryLogEnabled": true,
      "enabled": true
    }
  }
}

リクエストを送信するには、次のいずれかのオプションを展開します。

第 1 世代のインスタンスを作成する

第 1 世代インスタンスを作成するには:

Console(第 1 世代)

  1. Google Cloud Console の Cloud SQL インスタンス ページに移動します。

    [Cloud SQL インスタンス] ページに移動

  2. [インスタンスを作成] をクリックします。
  3. [第 1 世代の MySQL インスタンスについては、ここをクリックしてください] リンクをクリックします。
  4. 名前を入力します。

    インスタンス名には機密情報や個人を特定できる情報を含めないでください。インスタンス名は外部から閲覧可能です。
    インスタンス名にプロジェクト ID を含める必要はありません。この処理は必要に応じて自動的に行われます(ログファイルの場合など)。

  5. インスタンスの階層を選択します。
    階層、その機能、料金に対する影響については、料金ページをご覧ください。
  6. 必要に応じて、省略可能なインスタンス設定を設定します。
    省略可能な設定については、インスタンスの設定をご覧ください。
  7. [作成] をクリックします。
  8. インスタンスの初期化が終了した後、インスタンスを選択して開きます。
  9. [ユーザー] タブを選択します。
  10. [ユーザー アカウントを作成] をクリックして、root という名前のユーザーを作成し、パスワードを指定します。

    MySQL ユーザー 'root'@'%' が作成されます。MySQL ユーザーについて詳しくは、MySQL ユーザーをご覧ください。

gcloud(第 1 世代)

gcloud コマンドライン ツールのインストール方法と使用方法については、Cloud SDK のインストールをご覧ください。Cloud Shell の起動方法については、Cloud Shell のドキュメントをご覧ください。

  1. 使用できるマシンタイプのリストを表示します。
    gcloud sql tiers list
    

    大文字の「D」で始まるタイプがあります。第 1 世代インスタンスを作成するには、このタイプのマシンを選択する必要があります。他の値(db-n1-standard-1 など)を選択すると、第 2 世代インスタンスが作成されます。

    各階層、それぞれの機能、インスタンスの料金に対する影響については、料金ページをご覧ください。

  2. インスタンスを作成します。

    gcloud sql instances create [INSTANCE_NAME] --tier=[TIER]
    

    インスタンス名には機密情報や個人を特定できる情報を含めないでください。インスタンス名は外部から閲覧可能です。
    インスタンス名にプロジェクト ID を含める必要はありません。この処理は必要に応じて自動的に行われます(ログファイルの場合など)。

    TIER は、gcloud sql tiers list コマンドで出力される値のうち、大文字の D で始まるものです。

    たとえば、次のコマンドは、instance1 という名前でマシンタイプが D4 の第 1 世代インスタンスを作成します。

    gcloud sql instances create instance1 --tier=D4
    

    使用できる他のパラメータについては、gcloud sql instances create コマンドのリファレンスと、インスタンスの設定をご覧ください。

  3. インスタンスの「root@%」ユーザー アカウントを有効にします。
    gcloud sql users set-password root % --instance [INSTANCE_NAME] --password [PASSWORD]
    

    MySQL プロトコルを使用してインスタンスに接続するには、先にこの MySQL ユーザー アカウントを有効にする必要があります。

  4. 自動的に割り当てられる IPv6 アドレスを取得します。
    gcloud sql instances describe [INSTANCE_NAME]
    

    出力で、ipv6Address フィールドを探します。アプリケーションやツールがインスタンスに接続するときの IP アドレスとしてこれを使用できます。 IPv4 アドレスをリクエストすることもできますが、インスタンスが有効になっていない間でも若干の料金がかかります。

cURL(第 1 世代)

  1. インスタンスを作成します。
    gcloud auth login
    ACCESS_TOKEN="$(gcloud auth print-access-token)"
    curl --header "Authorization: Bearer ${ACCESS_TOKEN}" \
         --header 'Content-Type: application/json' \
         --data '{"name":"[INSTANCE_NAME]", "region":"[REGION]",
                  "settings": {"tier":"[TIER]",
                  "backupConfiguration": {"binaryLogEnabled":true, "enabled":true}}}' \
         -X POST \
         https://www.googleapis.com/sql/v1beta4/projects/[PROJECT-ID]/instances
    

    インスタンス名には機密情報や個人を特定できる情報を含めないでください。インスタンス名は外部から閲覧可能です。
    インスタンス名にプロジェクト ID を含める必要はありません。この処理は必要に応じて自動的に行われます(ログファイルの場合など)。

    この例では、バックアップとバイナリログが有効で、アクティベーション ポリシーが ON_DEMAND であるインスタンスを作成します。

    この呼び出しのパラメータの完全なリストについては、Instances:insert ページをご覧ください。リージョンや階層の有効な値など、インスタンスの設定の詳細については、インスタンスの設定をご覧ください。

  2. インスタンスの初期化が終了した後、root ユーザー アカウントを有効にします。
    curl --header "Authorization: Bearer ${ACCESS_TOKEN}" \
         --header 'Content-Type: application/json' \
         --data '{"name": "root", "host": "%", "password": "[ROOT_PASSWORD]"}' \
         -X PUT \
         'https://www.googleapis.com/sql/v1beta4/projects/[PROJECT-ID]/instances/[INSTANCE_NAME]/users?host=%25&name=root'
    
  3. 新しいインスタンスに自動的に割り当てられる IPv6 アドレスを取得します。
    curl --header "Authorization: Bearer ${ACCESS_TOKEN}" \
         -X GET \
         https://www.googleapis.com/sql/v1beta4/projects/[PROJECT-ID]/instances/[INSTANCE_NAME]
    
    レスポンスで ipv6Address フィールドを探します。

次のステップ

このページは役立ちましたか?評価をお願いいたします。

フィードバックを送信...