MySQL データベースの作成と管理

ここでは、Cloud SQL インスタンス上の MySQL データベースの作成、一覧取得、削除について説明します。

MySQL データベースの詳細については、MySQL のドキュメントをご覧ください。

始める前に

ここで説明するタスクの前に、次のことを行っておく必要があります。

  • Cloud SQL インスタンスを作成しておきます。詳細については、インスタンスの作成をご覧ください。

MySQL クライアントを使用してデータベースを作成または管理する場合は、次のことを行っておく必要があります。

データベースの作成

データベースを作成する場合は、スキーマ オブジェクト名の規則に従います。作成時に設定しないと、新しいデータベースに次のデフォルト値が使用されます。

  • 文字セット: utf8
  • 照合: utf8_general_ci

Cloud SQL インスタンスでデータベースを作成するには、次のようにします。

Console

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

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

  2. データベースを追加する先のインスタンスを選択します。
  3. [データベース] タブを選択します。
  4. [データベースを作成] をクリックします。
  5. [データベースを作成] ダイアログで、データベースの名前と、必要に応じて文字セットと照合を指定します。

    文字セットと照合の詳細については、文字セット、照合、Unicode をご覧ください。

  6. [作成] をクリックします。

gcloud

リファレンス情報については、gcloud sql databases create をご覧ください。

文字セットと照合の詳細については、文字セット、照合、Unicode をご覧ください。

gcloud sql databases create [DATABASE_NAME] --instance=[INSTANCE_NAME]
[--charset=CHARSET] [--collation=COLLATION]

REST v1beta4

以下のリクエストでは、databases:insert メソッドを使用して、指定したインスタンスに新しいデータベースを作成します。

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

  • project-id: プロジェクト ID
  • instance-id: インスタンス ID
  • database-name: Cloud SQL インスタンス内のデータベースの名前

HTTP メソッドと URL:

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

JSON 本文のリクエスト:

{
  "project": "project-id",
  "instance": "instance-id",
  "name": "database-name"
}

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

次のような JSON レスポンスが返されます。

MySQL クライアント

リファレンス情報については、MySQL のドキュメントの CREATE DATABASE をご覧ください。

文字セットと照合の詳細については、文字セット、照合、Unicode をご覧ください。

CREATE DATABASE [database_name]
  [[CHARACTER SET charset_name][COLLATE collation_name]];

データベースの一覧を表示する

インスタンス上のすべてのデータベースの一覧を取得するには:

Console

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

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

  2. データベースをリストするインスタンスを選択します。
  3. [データベース] をクリックします。

    新しく作成されたインスタンスには、information_schemamysqlperformance_schema の 3 つのシステム データベースがあります。

gcloud

リファレンス情報については、gcloud sql databases list をご覧ください。

gcloud sql databases list --instance=[INSTANCE_NAME]

REST v1beta4

以下のリクエストでは、databases:list メソッドを使用して、インスタンスのデータベースを一覧表示します。

API を使用してデータベースを一覧表示すると、コンソールでは表示されない追加のテンプレート データベースとシステム データベースが表示されます。システム データベースを削除したり、管理したりすることはできません。

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

  • project-id: プロジェクト ID
  • instance-id: インスタンス ID

HTTP メソッドと URL:

GET https://www.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id/databases

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

次のような JSON レスポンスが返されます。

MySQL クライアント

リファレンス情報については、MySQL のドキュメントの SHOW DATABASES をご覧ください。

SHOW DATABASES;

データベースの削除

Cloud SQL インスタンスでデータベースを削除するには、次のようにします。

Console

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

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

  2. 削除するデータベースが含まれているインスタンスを選択します。
  3. [データベース] をクリックします。
  4. データベースのリストで削除するデータベースを選択し、ごみ箱アイコンをクリックします。
  5. [データベースを削除] ダイアログ ボックスで、[OK] をクリックします。

gcloud

リファレンス情報については、gcloud sql databases delete をご覧ください。

gcloud sql databases delete [DATABASE_NAME] --instance=[INSTANCE_NAME]

REST v1beta4

以下のリクエストでは、databases:delete メソッドを使用して、指定されたデータベースを削除します。

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

  • project-id: プロジェクト ID
  • instance-id: インスタンス ID
  • database-name: Cloud SQL インスタンス内のデータベースの名前

HTTP メソッドと URL:

DELETE https://www.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id/databases/database-name

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

次のような JSON レスポンスが返されます。

MySQL クライアント

リファレンス情報については、MySQL のドキュメントの DROP DATABASE をご覧ください。

DROP DATABASE [database_name];

次のステップ