このページでは、Spanner データベースを作成して管理する方法について説明します。
- データベースを作成するさまざまな方法
- データベース オプションを変更する
- データベースを削除する
このページには、GoogleSQL 言語データベースおよび PostgreSQL 言語データベースの情報が記載されています。データベース スキーマを更新する方法については、スキーマを更新するをご覧ください。インスタンスの作成の詳細については、インスタンスの作成と管理をご覧ください。既存のインスタンスにデータベースを作成するには、次のいずれかの方法を使用します。
- データベースを作成する: SQL 言語を選択し、スキーマを定義して、新しいデータベースを作成できます。
- 独自のデータをインポートする: CSV、MySQL ダンプ、PostgreSQL ダンプファイルを新しいデータベースまたは既存のデータベースにインポートできます。
- サンプルデータでデータベースを作成する: 使用可能なサンプル データセットのいずれかを使用してデータベースにデータを入力し、Spanner の機能を試すことができます。
データベースを作成する
既存のインスタンスに新しいデータベースを作成できます。GoogleSQL 言語データベースの場合、データベース スキーマの定義は、データベースの作成時またはデータベースの作成後に行えます。PostgreSQL 言語データベースの場合は、作成後にスキーマを定義する必要があります。
スキーマはデータベース定義言語を使用して定義します。これは GoogleSQL 用と PostgreSQL 用にドキュメント化されています。スキーマの作成と更新の詳細については、次のリンク先をご覧ください。
データベースの作成後にデータベースの削除からの保護を有効にすれば、アプリケーションとサービスにとって重要なデータベースを保護できます。詳細については、データベースが誤って削除されることを防止をご覧ください。
Google Cloud コンソール
Google Cloud コンソールで、[Spanner インスタンス] ページに移動します。
データベースを作成するインスタンスを選択します。
[データベースを作成] をクリックします。
次の値を入力します。
- Google Cloud コンソールに表示するデータベース名。
- このデータベースで使用する言語。
- GoogleSQL 言語データベースの場合、スキーマを定義する一連の DDL ステートメントを必要に応じて指定します。DDL テンプレートを使用すると、一般的な要素を事前入力できます。DDL ステートメントにエラーがある場合、 Google Cloud コンソールでデータベースを作成しようとするとエラーが返されます。
- 必要に応じて、このデータベースで使用する顧客管理の暗号鍵を選択します。
[作成] をクリックしてデータベースを作成します。
gcloud
gcloud spanner databases create コマンドを使用します。
```sh
gcloud spanner databases create DATABASE \
--instance=INSTANCE \
[--async] \
[--database-dialect=DATABASE_DIALECT] \
[--ddl=DDL] \
[--ddl-file=DDL_FILE] \
[--kms-key=KMS_KEY : --kms-keyring=KMS_KEYRING --kms-location=KMS_LOCATION --kms-project=KMS_PROJECT] \
[GCLOUD_WIDE_FLAG …]
```
次のオプションは必須です。
DATABASE- データベース ID またはデータベースの完全修飾 ID。完全修飾識別子を指定する場合は、
--instanceフラグを省略できます。 --instance=INSTANCE- データベースの Spanner インスタンス。
次のオプションは省略可能です。
--async- 処理中のオペレーションの完了を待たずに、直ちにコマンドを終了します。
--database-dialect=DATABASE_DIALECT- Spanner データベースの SQL 言語。
POSTGRESQLまたはGOOGLE_STANDARD_SQLにする必要があります。 --ddl=DDL- 新しく作成されたデータベース内で実行するセミコロン区切りの DDL(データ定義言語)ステートメント。いずれかのステートメントにエラーがある場合、データベースは作成されません。
--ddl_fileが設定されていると、このフラグは無視されます。PostgreSQL 言語データベースではサポートされていません。 --ddl-file=DDL_FILE- 新しく作成されたデータベース内で実行するセミコロン区切りの DDL(データ定義言語)ステートメントを含むファイルのパス。いずれかのステートメントにエラーがある場合、データベースは作成されません。
--ddl_fileが設定されていると、--ddlは無視されます。PostgreSQL 言語データベースではサポートされていません。
データベースの作成時に使用する Cloud Key Management Service 鍵を指定する場合は、次のオプションを含めます。
--kms-key=KMS_KEY- 鍵の ID または鍵の完全修飾 ID。
このグループの他の引数を指定する場合は、このフラグを指定する必要があります。完全修飾 ID が指定されている場合は、他の引数を省略できます。
--kms-keyring=KMS_KEYRING- 鍵の Cloud KMS キーリング ID。
--kms-location=KMS_LOCATION- Google Cloud 鍵のロケーション。
--kms-project=KMS_PROJECT- Google Cloud 鍵のプロジェクト ID。
クライアント(GoogleSQL)
C++
Spanner 用のクライアント ライブラリをインストールして使用する方法については、Spanner クライアント ライブラリをご覧ください。
Spanner に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。 詳細については、ローカル開発環境の認証の設定をご覧ください。
Go
Spanner 用のクライアント ライブラリをインストールして使用する方法については、Spanner クライアント ライブラリをご覧ください。
Spanner に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。 詳細については、ローカル開発環境の認証の設定をご覧ください。
Java
Spanner 用のクライアント ライブラリをインストールして使用する方法については、Spanner クライアント ライブラリをご覧ください。
Spanner に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。 詳細については、ローカル開発環境の認証の設定をご覧ください。