このドキュメントでは、コンテキスト セット ファイルを使用して Cloud SQL for MySQL Studio でコンテキスト セットを作成する方法について説明します。Cloud SQL Studio でコンテキスト セットを作成すると、Cloud SQL Studio は、選択したリージョンのプロジェクトの default コンテキスト セット グループに保存し、現在のデータベースにリンクします。コンテキスト セット名(および派生したコンテキスト セット ID)は、特定のリージョンのプロジェクトの default コンテキスト セット グループ内で、すべてのデータベースとインスタンスにわたって一意である必要があります。Cloud SQL Studio で、派生 ID がすでに存在する名前のコンテキスト セットを作成すると、検証に失敗します。データベースの関連付けを維持しながらコンテンツを上書きするには、既存のコンテキスト セットを編集します。コンテキスト エンジニアリング エージェントまたは Dataplex API を使用して、既存のコンテキスト セット ID で直接アップロードすると、そのコンテンツと、指定されている場合はデータベースの関連付けが置き換えられます。
Cloud SQL Studio の [コンテキスト セット] リストには、現在のデータベースにリンクされている、サポートされているすべてのリージョンの default コンテキスト セット グループ内のコンテキスト セットのみが表示されます。別のデータベース用に作成されたコンテキスト セット、または databases(またはカスタム コンテキスト セット グループ)でデータベース リソースをリンクせずに API を介して作成されたコンテキスト セットは、Cloud SQL Studio のリストに表示されません。
始める前に
エージェントを作成する前に、次の前提条件を満たす必要があります。
必要なサービスを有効にする
プロジェクトで次のサービスを有効にします。Cloud SQL インスタンスを準備する
- 既存の Cloud SQL インスタンスにアクセスできることを確認するか、新しいインスタンスを作成します。詳細については、Cloud SQL のインスタンスを作成するをご覧ください。
- テーブルを作成するインスタンスにデータベースを作成します。詳細については、Cloud SQL インスタンスでデータベースを作成するをご覧ください。
必要なロールと権限
cloudsql_iam_authenticationデータベース フラグをon(cloudsql_iam_authentication=on)に設定して、インスタンスで IAM データベース認証を有効にします。詳細については、IAM データベース認証に既存のインスタンスを構成するをご覧ください。- インスタンス レベルで IAM ユーザーまたはサービス アカウントを追加します。詳細については、ユーザー、サービス アカウント、またはグループに IAM ポリシー バインディングを追加するをご覧ください。
- プロジェクト レベルで IAM ユーザーまたはサービス アカウントに
roles/cloudsql.studioUser、roles/cloudsql.instanceUser、roles/serviceusage.serviceUsageConsumer、roles/geminidataanalytics.queryDataUserのロールを付与します。詳細については、プロジェクトの IAM ポリシー バインディングを追加するをご覧ください。 - コンテキスト セットを作成、アップロード、管理するには、プロジェクト レベルで IAM ユーザーまたはサービス アカウントに Dataplex Catalog 編集者(
roles/dataplex.catalogEditor)または Dataplex Catalog 管理者(roles/dataplex.catalogAdmin)ロールを付与します。詳細については、コンテキスト セットの権限をご覧ください。 - 特権ユーザーが IAM ユーザーまたはサービス アカウントにデータベース権限を付与する必要があります。
GRANT SELECT ON DATABASE_NAME.* TO 'IAM_USERNAME'@'%';
DATABASE_NAME はデータベースの名前に、IAM_USERNAME は@とドメイン サフィックスを除いた IAM ユーザー名に置き換えます(たとえば、user@example.comはuserになり、'user'@'%'になります)。
詳細については、個々の IAM ユーザーまたはサービス アカウントにデータベース権限を付与するをご覧ください。
Cloud SQL インスタンスに executesql 権限を付与する
Cloud SQL インスタンスに executesql 権限を付与し、Cloud SQL Data API を有効にするには、次のコマンドを実行します。
gcloud sql instances patch INSTANCE_ID --project=PROJECT_ID --data-api-access=ALLOW_DATA_API
PROJECT_ID: 実際の Google Cloud プロジェクト ID。INSTANCE_ID: Cloud SQL インスタンスの ID。
コンテキスト セットを作成する
コンテキスト セットを作成する手順は次のとおりです。
Google Cloud コンソールで、[Cloud SQL] ページに移動します。
リストからインスタンスを選択します。
ナビゲーション メニューで [Cloud SQL Studio] をクリックします。
IAM 認証を使用して Cloud SQL Studio にログインします。
[エクスプローラ] ペインで、[コンテキスト セット] の横にある [アクションを表示] をクリックします。
[コンテキスト セットを作成] をクリックします。
[コンテキスト セット名] に、一意のコンテキスト セット名を入力します。Cloud SQL Studio では、名前は 4 ~ 30 文字で、先頭に空白文字を使用することはできません。Studio は、名前を小文字に変換し、英数字以外の文字をハイフン(
-)に置き換えることで、コンテキスト セット ID を導出します。導出されたコンテキスト セット ID は、選択したリージョンのプロジェクトのdefaultコンテキスト セット グループ内で一意である必要があります。たとえば、コンテキスト セット名querydata_e2e_testのコンテキスト セット ID はquerydata-e2e-testです。コンテキスト エンジニアリング エージェントまたは Dataplex API を使用してコンテキスト セットを直接アップロードする場合、コンテキスト セット ID は大文字と小文字が区別され、スラッシュ(/)を含めることはできません。また、4 ~ 30 文字、英数字、ハイフン、アンダースコアに制限されません。省略可。[コンテキスト セットの説明] に、コンテキスト セットの説明を追加します。
省略可。コンテキスト セット ファイルをアップロードするには、[コンテキスト セット ファイルのアップロード] セクションで [参照] をクリックし、コンテキスト セット ファイルを選択します。
省略可。コンテキスト セットのリージョンを選択するには、[詳細オプションを表示] をクリックし、[ロケーションを選択] でリージョンを選択します(作成ごとにデフォルトで
us-east1に設定されます)。us-east1以外のリージョンを選択する場合は、コンテキスト セット名を入力する前にリージョンを選択して、Cloud SQL Studio がそのリージョンで名前の一意性を検証するようにします。[作成] をクリックします。
コンテキスト セットを構築する
コンテキスト セットを作成したら、Gemini CLI を使用してコンテキストを構築するの手順に沿って、コンテキスト セット ファイルを作成します。その後、コンテキスト セットを編集してコンテキスト セット ファイルをアップロードできます。
コンテキスト セットを編集する
コンテキスト セットを編集する手順は次のとおりです。
Google Cloud コンソールで、[Cloud SQL] ページに移動します。
リストからインスタンスを選択します。
ナビゲーション メニューで [Cloud SQL Studio] をクリックします。
IAM 認証を使用して Cloud SQL Studio にログインします。
編集するコンテキスト セットの横にある [アクションを表示] をクリックします。
[コンテキスト セットを編集] をクリックします。
省略可。[コンテキスト セットの説明] を編集します。
[コンテキスト セット ファイルのアップロード] セクションで [参照] をクリックし、コンテキスト セット ファイルを選択します。
[保存] をクリックします。
コンテキスト セットを削除する
コンテキスト セットを削除する手順は次のとおりです。
Google Cloud コンソールで、[Cloud SQL] ページに移動します。
リストからインスタンスを選択します。
ナビゲーション メニューで [Cloud SQL Studio] をクリックします。
IAM 認証を使用して Cloud SQL Studio にログインします。
削除するコンテキスト セットの横にある [アクションを表示] をクリックします。
[コンテキスト セットを削除] をクリックします。
[コンテキスト セットを削除しますか?] 確認ダイアログで、コンテキスト セットの ID を入力します。
[Confirm] をクリックして、コンテキスト セットを削除します。
次のステップ
- コンテキスト セットの詳細を確認する。
- コンテキスト セットをテストする方法を確認する。
- Gemini CLI を使用してコンテキストを構築する方法を確認する。