ツール: create_user
Cloud SQL インスタンスのデータベース ユーザーを作成します。
- このツールは長時間実行オペレーションを返します。
get_operationツールを使用して、オペレーションが完了するまでステータスをポーリングします。 create_userツールを使用する場合は、ユーザーのタイプ(CLOUD_IAM_USER、CLOUD_IAM_SERVICE_ACCOUNT、BUILT_IN)を指定します。- デフォルトでは、リクエストで他のデータベース ロールを明示的に指定しない限り、新しく作成されたユーザーには
cloudsqlsuperuserロールが割り当てられます。 - 現在ログインしている IAM ユーザーであれば、
execute_sqlツールで新しく作成したユーザーを使用できます。execute_sqlツールは、IAM データベース認証を使用してログインしたデータベース ユーザーの権限を使用して SQL ステートメントを実行します。
create_user ツールには次の制限があります。
- パスワード付きの組み込みユーザーを作成するには、
password_secret_versionフィールドを使用して、Google Cloud Secret Manager でパスワードを指定します。password_secret_versionの値は、projects/12345/locations/us-central1/secrets/my-password-secret/versions/1やprojects/12345/locations/us-central1/secrets/my-password-secret/versions/latestなどのシークレット バージョンのリソース名にする必要があります。呼び出し元には、シークレット バージョンに対するsecretmanager.secretVersions.access権限が必要です。 create_userツールは、SQL Server のユーザーの作成をサポートしていません。
PostgreSQL で IAM ユーザーを作成するには:
- データベース ユーザー名は、IAM ユーザーのメールアドレスで、すべて小文字にする必要があります。たとえば、PostgreSQL IAM ユーザー
example-user@example.comのユーザーを作成するには、次のリクエストを使用します。
{
"name": "example-user@example.com",
"type": "CLOUD_IAM_USER",
"instance":"test-instance",
"project": "test-project"
}
IAM ユーザー用に作成されたデータベース ユーザー名は example-user@example.com です。
PostgreSQL で IAM サービス アカウントを作成するには:
- アカウントの完全なメールアドレスが
service-account-name@project-id.iam.gserviceaccount.comであっても、データベース ユーザー名は.gserviceaccount.comサフィックスなしで作成する必要があります。たとえば、PostgreSQL 用の IAM サービス アカウントを作成するには、次のリクエスト形式を使用します。
{
"name": "test@test-project.iam",
"type": "CLOUD_IAM_SERVICE_ACCOUNT",
"instance": "test-instance",
"project": "test-project"
}
IAM サービス アカウント用に作成されたデータベース ユーザー名は test@test-project.iam です。
MySQL で IAM ユーザーまたは IAM サービス アカウントを作成するには:
- Cloud SQL for MySQL がユーザー名を格納するときに、ユーザーまたはサービス アカウントのメールアドレスから @ とドメイン名が切り捨てられます。たとえば、
example-user@example.comはexample-userになります。 - このため、同じユーザー名で異なるドメイン名の 2 つの IAM ユーザーまたはサービス アカウントを同じ Cloud SQL インスタンスに追加することはできません。
- たとえば、MySQL IAM ユーザー
example-user@example.comのユーザーを作成するには、次のリクエストを使用します。
{
"name": "example-user@example.com",
"type": "CLOUD_IAM_USER",
"instance": "test-instance",
"project": "test-project"
}
IAM ユーザー用に作成されたデータベース ユーザー名は example-user です。
- たとえば、MySQL IAM サービス アカウント
service-account-name@project-id.iam.gserviceaccount.comを作成するには、次のリクエストを使用します。
{
"name": "service-account-name@project-id.iam.gserviceaccount.com",
"type": "CLOUD_IAM_SERVICE_ACCOUNT",
"instance": "test-instance",
"project": "test-project"
}
IAM サービス アカウント用に作成されたデータベース ユーザー名は service-account-name です。
次のコードサンプルは、curl を使用して create_user MCP ツールを呼び出す方法を示しています。
| Curl リクエスト |
|---|
curl --location 'https://sqladmin.googleapis.com/mcp' \ --header 'content-type: application/json' \ --header 'accept: application/json, text/event-stream' \ --data '{ "method": "tools/call", "params": { "name": "create_user", "arguments": { // Provide these details according to the MCP tool specification. } }, "jsonrpc": "2.0", "id": 1 }' |
入力スキーマ
ユーザーが MCP の挿入リクエストを送信します。
SqlUsersInsertMcpRequest
| JSON 表現 |
|---|
{
"project": string,
"instance": string,
"type": enum ( |
| フィールド | |
|---|---|
project |
必須。インスタンスを含むプロジェクトのプロジェクト ID。 |
instance |
必須。データベース インスタンス ID。プロジェクト ID は含みません。 |
type |
必須。ユーザータイプ。ログイン時にユーザーを認証する方法を決定します。Cloud IAM ユーザーで認証する場合は、タイプ |
name |
必須。Cloud SQL インスタンスのユーザーの名前。 |
databaseRoles[] |
省略可。ユーザーのロール メンバーシップ。デフォルト値は [cloudsqlsuperuser] です。 |
passwordSecretVersion |
省略可。入力専用。ユーザーのパスワードを保持する Secret Manager Secret のリソース名。 |
SqlUserType
ユーザータイプ。
| 列挙型 | |
|---|---|
BUILT_IN |
データベースの組み込みユーザータイプ。 |
CLOUD_IAM_USER |
Cloud IAM ユーザー。 |
CLOUD_IAM_SERVICE_ACCOUNT |
Cloud IAM サービス アカウント。 |
CLOUD_IAM_GROUP |
Cloud IAM グループ。ログインには使用されません。 |
CLOUD_IAM_GROUP_USER |
読み取り専用。Cloud IAM グループに属するユーザーのログイン。 |
CLOUD_IAM_GROUP_SERVICE_ACCOUNT |
読み取り専用。Cloud IAM グループに属するサービス アカウントのログイン。 |
CLOUD_IAM_WORKFORCE_IDENTITY |
Workforce Identity 連携によって管理される Cloud IAM Workforce Identity。 |
ENTRAID_USER |
Microsoft Entra ID ユーザー。 |
出力スキーマ
オペレーション リソース。オペレーション リソースを返すオペレーションを成功させるため、オペレーションに関連するフィールドのみがリソースに入力されます。
オペレーション
| JSON 表現 |
|---|
{ "kind": string, "targetLink": string, "status": enum ( |
| フィールド | |
|---|---|
kind |
これは常に |
targetLink |
|
status |
オペレーションのステータス。 |
user |
このオペレーションを開始したユーザーのメールアドレス。 |
insertTime |
このオペレーションがエンキューされた時刻(UTC タイムゾーン、RFC 3339 形式、例: RFC 3339 を使用します。生成された出力は常に Z 正規化され、小数点以下は 0、3、6、または 9 桁になります。「Z」以外のオフセットも使用できます。例: |
startTime |
このオペレーションが実際に開始された時間(UTC タイムゾーン、RFC 3339 形式)。例: RFC 3339 を使用します。生成された出力は常に Z 正規化され、小数点以下は 0、3、6、または 9 桁になります。「Z」以外のオフセットも使用できます。例: |
endTime |
このオペレーションが終了した時刻(UTC タイムゾーン、RFC 3339 形式)。例: RFC 3339 を使用します。生成された出力は常に Z 正規化され、小数点以下は 0、3、6、または 9 桁になります。「Z」以外のオフセットも使用できます。例: |
error |
このオペレーションの処理中にエラーが発生した場合、このフィールドにデータが設定されます。 |
apiWarning |
Admin API の警告メッセージ。 |
operationType |
オペレーションの種類。有効な値は、 |
importContext |
インポート オペレーションのコンテキスト(該当する場合)。 |
exportContext |
エクスポート オペレーションのコンテキスト(該当する場合)。 |
backupContext |
バックアップ オペレーションのコンテキスト(該当する場合)。 |
preCheckMajorVersionUpgradeContext |
このフィールドは、operation_type が PRE_CHECK_MAJOR_VERSION_UPGRADE の場合にのみ入力されます。PreCheckMajorVersionUpgradeContext メッセージ自体には、アップグレードのターゲット データベース バージョンやチェックの結果(検出された警告やエラーなど)など、その事前チェックの詳細が含まれています。 |
startWorkloadCaptureContext |
|
stopWorkloadCaptureContext |
Cloud SQL インスタンスでのワークロード(SQL クエリ)の記録を停止するための詳細情報を含む |
startWorkloadReplayContext |
|
stopWorkloadReplayContext |
|
name |
オペレーションを一意に識別する識別子。この識別子を使って、オペレーションに関する情報が格納されているオペレーション リソースを取得できます。 |
targetId |
このオペレーションが実行されるリソースの名前。 |
selfLink |
このリソースの URI。 |
targetProject |
このオペレーションに関連するターゲット インスタンスのプロジェクト ID。 |
acquireSsrsLeaseContext |
SSRS リース取得オペレーションのコンテキスト(該当する場合)。 |
subOperationType |
省略可。オペレーション タイプに基づくサブオペレーション。 |
タイムスタンプ
| JSON 表現 |
|---|
{ "seconds": string, "nanos": integer } |
| フィールド | |
|---|---|
seconds |
UNIX エポック 1970-01-01T00:00:00Z からの UTC 時刻の秒数を表します。-62135596800~253402300799 の範囲(両端を含む)にする必要があります(これは 0001-01-01T00:00:00Z~9999-12-31T23:59:59Z に対応します)。 |
nanos |
ナノ秒分解能による、秒の負ではない小数以下部分。このフィールドは、秒の代替ではなく、期間のナノ秒部分です。小数以下を含む負の秒の値は、時間を前方にカウントする負ではない nanos 値を持つ必要があります。0~999,999,999 にする必要があります(両端を含む)。 |
OperationErrors
| JSON 表現 |
|---|
{
"kind": string,
"errors": [
{
object ( |
| フィールド | |
|---|---|
kind |
これは常に |
errors[] |
このオペレーションの処理中に発生したエラーのリスト。 |
OperationError
| JSON 表現 |
|---|
{ "kind": string, "code": string, "message": string } |
| フィールド | |
|---|---|
kind |
これは常に |
code |
発生した具体的なエラーを示します。 |
message |
発生したエラーについての追加情報。 |
ApiWarning
| JSON 表現 |
|---|
{
"code": enum ( |
| フィールド | |
|---|---|
code |
警告タイプを一意に識別するコード。 |
message |
警告メッセージ |
region |
REGION_UNREACHABLE 警告のリージョン名。 |
ImportContext
| JSON 表現 |
|---|
{ "uri": string, "database": string, "kind": string, "fileType": enum ( |
| フィールド | |
|---|---|
uri |
Cloud Storage 内のインポート ファイルへのパス( |
database |
インポートのターゲット データベース。 |
kind |
これは常に |
fileType |
指定された URI のファイル形式。`SQL |
csvImportOptions |
データを CSV としてインポートするためのオプション。 |
importUser |
このインポート オペレーションの PostgreSQL ユーザー。PostgreSQL インスタンスのみ。 |
bakImportOptions |
SQL Server .BAK ファイルに固有のインポート パラメータ |
sqlImportOptions |
省略可。SQL ステートメントからデータをインポートするためのオプション。 |
tdeImportOptions |
省略可。SQL Server TDE 証明書に固有のインポート パラメータ |
SqlCsvImportOptions
| JSON 表現 |
|---|
{ "table": string, "columns": [ string ], "escapeCharacter": string, "quoteCharacter": string, "fieldsTerminatedBy": string, "linesTerminatedBy": string } |
| フィールド | |
|---|---|
table |
CSV データのインポート先のテーブル。 |
columns[] |
CSV データのインポート先の列。指定しない場合、データベース テーブルのすべての列に CSV データがロードされます。 |
escapeCharacter |
エスケープが必要なデータ文字の前に表示する文字を指定します。 |
quoteCharacter |
データ値を引用符で囲むときに使用する引用符文字を指定します。 |
fieldsTerminatedBy |
ファイルの各行の列を区切る文字を指定します。 |
linesTerminatedBy |
これは行を区切るために使用されます。行にすべてのフィールドが含まれていない場合、残りの列はデフォルト値に設定されます。 |
SqlBakImportOptions
| JSON 表現 |
|---|
{ "encryptionOptions": { object ( |
| フィールド | |
|---|---|
encryptionOptions |
|
striped |
復元するバックアップ セットがストライプ化されているかどうか。Cloud SQL for SQL Server にのみ適用されます。 |
noRecovery |
バックアップのインポートで NORECOVERY オプションを使用してデータベースを復元するかどうか。Cloud SQL for SQL Server にのみ適用されます。 |
recoveryOnly |
バックアップのインポート リクエストで Bak コンテンツをダウンロードせずにデータベースをオンラインにするかどうか。no_recovery と recovery_only のいずれか 1 つのみが true になります。それ以外の場合はエラーが返されます。Cloud SQL for SQL Server にのみ適用されます。 |
bakType |
bak コンテンツのタイプ(FULL または DIFF) |
stopAt |
省略可。インポートを停止するタイムスタンプ。このタイムスタンプは RFC 3339 形式(例: RFC 3339 を使用します。生成された出力は常に Z 正規化され、小数点以下は 0、3、6、または 9 桁になります。「Z」以外のオフセットも使用できます。例: |
stopAtMark |
省略可。インポートを停止するマーク付きトランザクション。このフィールドは STOPATMARK キーワードと同等で、Cloud SQL for SQL Server にのみ適用されます。 |
EncryptionOptions
| JSON 表現 |
|---|
{ "certPath": string, "pvkPath": string, "pvkPassword": string, "keepEncrypted": boolean } |
| フィールド | |
|---|---|
certPath |
Cloud Storage 内の証明書(.cer)のパス( |
pvkPath |
Cloud Storage 内の証明書の秘密鍵(.pvk)へのパス( |
pvkPassword |
秘密鍵を暗号化するパスワード |
keepEncrypted |
省略可。インポートしたファイルが暗号化されたままになるかどうか。 |
BoolValue
| JSON 表現 |
|---|
{ "value": boolean } |
| フィールド | |
|---|---|
value |
ブール値。 |
SqlImportOptions
| JSON 表現 |
|---|
{
"threads": integer,
"parallel": boolean,
"postgresImportOptions": {
object ( |
| フィールド | |
|---|---|
threads |
省略可。並列インポートに使用するスレッドの数。 |
parallel |
省略可。インポートを並列にするかどうか。 |
postgresImportOptions |
省略可。Cloud SQL for PostgreSQL インスタンスからインポートするためのオプション。 |
Int32Value
| JSON 表現 |
|---|
{ "value": integer } |
| フィールド | |
|---|---|
value |
int32 値。 |
PostgresImportOptions
| JSON 表現 |
|---|
{ "clean": boolean, "ifExists": boolean } |
| フィールド | |
|---|---|
clean |
省略可。pg_restore ユーティリティの --clean フラグ。このフラグは、Cloud SQL でファイルを並列でインポートするように有効にしている場合にのみ適用されます。 |
ifExists |
省略可。pg_restore ユーティリティの --if-exists フラグ。このフラグは、Cloud SQL でファイルを並列でインポートするように有効にしている場合にのみ適用されます。 |
SqlTdeImportOptions
| JSON 表現 |
|---|
{ "certificatePath": string, "privateKeyPath": string, "privateKeyPassword": string, "name": string } |
| フィールド | |
|---|---|
certificatePath |
必須。TDE 証明書の公開鍵のパス(gs://bucketName/fileName の形式)。インスタンスには、ファイルに対する読み取りアクセス権が必要です。SQL Server インスタンスにのみ適用されます。 |
privateKeyPath |
必須。TDE 証明書の秘密鍵のパス(gs://bucketName/fileName 形式)。インスタンスには、ファイルに対する読み取りアクセス権が必要です。SQL Server インスタンスにのみ適用されます。 |
privateKeyPassword |
必須。秘密鍵を暗号化するパスワード。 |
name |
必須。証明書名。SQL Server インスタンスにのみ適用されます。 |
ExportContext
| JSON 表現 |
|---|
{ "uri": string, "databases": [ string ], "kind": string, "sqlExportOptions": { object ( |
| 項目 | |
|---|---|
uri |
エクスポートの保存先となる、Google Cloud Storage 内のファイルへのパス。URI の形式は |
databases[] |
エクスポートされるデータベース。 |
kind |
これは常に |
sqlExportOptions |
データを SQL ステートメントとしてエクスポートするためのオプション。 |
csvExportOptions |
データを CSV としてエクスポートするためのオプション。 |
fileType |
指定された URI のファイル形式。 |
offload |
サーバーレス エクスポートを実行するかどうか。 |
bakExportOptions |
データを BAK ファイルとしてエクスポートするためのオプション。 |
tdeExportOptions |
省略可。SQL Server TDE 証明書に固有のエクスポート パラメータ |
SqlExportOptions
| JSON 表現 |
|---|
{ "tables": [ string ], "schemaOnly": boolean, "mysqlExportOptions": { object ( |
| フィールド | |
|---|---|
tables[] |
指定したデータベースからエクスポートするテーブルまたはエクスポートされたテーブル。テーブルを指定する場合は、データベースを 1 つだけ指定します。PostgreSQL インスタンスの場合は、1 つのテーブルのみを指定できます。 |
schemaOnly |
スキーマのみをエクスポートします。 |
mysqlExportOptions |
|
threads |
省略可。並列エクスポートに使用するスレッドの数。 |
parallel |
省略可。エクスポートを並列にするかどうか。 |
postgresExportOptions |
省略可。Cloud SQL for PostgreSQL インスタンスからエクスポートするためのオプション。 |
MysqlExportOptions
| JSON 表現 |
|---|
{ "masterData": integer } |
| フィールド | |
|---|---|
masterData |
レプリケーションの設定に必要な SQL ステートメントを含めるオプション。 |
PostgresExportOptions
| JSON 表現 |
|---|
{ "clean": boolean, "ifExists": boolean } |
| フィールド | |
|---|---|
clean |
省略可。このオプションを使用して、DROP |
ifExists |
省略可。clean によって生成された各 DROP ステートメントに IF EXISTS SQL ステートメントを含めるオプション。 |
SqlCsvExportOptions
| JSON 表現 |
|---|
{ "selectQuery": string, "escapeCharacter": string, "quoteCharacter": string, "fieldsTerminatedBy": string, "linesTerminatedBy": string } |
| フィールド | |
|---|---|
selectQuery |
データを抽出するために使用する select クエリ。 |
escapeCharacter |
エスケープが必要なデータ文字の前に表示する文字を指定します。 |
quoteCharacter |
データ値を引用符で囲むときに使用する引用符文字を指定します。 |
fieldsTerminatedBy |
ファイルの各行の列を区切る文字を指定します。 |
linesTerminatedBy |
これは行を区切るために使用されます。行にすべてのフィールドが含まれていない場合、残りの列はデフォルト値に設定されます。 |
SqlBakExportOptions
| JSON 表現 |
|---|
{
"striped": boolean,
"stripeCount": integer,
"bakType": enum ( |
| フィールド | |
|---|---|
striped |
エクスポートをストライプ化するかどうか。 |
stripeCount |
エクスポートに使用するストライプの数を指定するオプション。空白で、ストライプ フィールドの値が true の場合、ストライプの数は自動的に選択されます。 |
bakType |
この bak ファイルのタイプは、エクスポート、FULL、DIFF のいずれかになります(SQL Server のみ)。 |
copyOnly |
非推奨: copy_only は非推奨になりました。代わりに differential_base を使用する |
differentialBase |
バックアップを差分ベースとして使用できるかどうか。copy_only バックアップは差分ベースとして使用できません |
exportLogStartTime |
省略可。トランザクション ログがエクスポート オペレーションに含まれる開始タイムスタンプ。UTC の RFC 3339 形式(例: RFC 3339 を使用します。生成された出力は常に Z 正規化され、小数点以下は 0、3、6、または 9 桁になります。「Z」以外のオフセットも使用できます。例: |
exportLogEndTime |
省略可。エクスポート オペレーションにトランザクション ログが含まれる終了タイムスタンプ。RFC 3339 形式(例: RFC 3339 を使用します。生成された出力は常に Z 正規化され、小数点以下は 0、3、6、または 9 桁になります。「Z」以外のオフセットも使用できます。例: |
SqlTdeExportOptions
| JSON 表現 |
|---|
{ "certificatePath": string, "privateKeyPath": string, "privateKeyPassword": string, "name": string } |
| フィールド | |
|---|---|
certificatePath |
必須。TDE 証明書の公開鍵のパス(gs://bucketName/fileName の形式)。インスタンスにはバケットへの書き込みアクセス権が必要です。SQL Server インスタンスにのみ適用されます。 |
privateKeyPath |
必須。TDE 証明書の秘密鍵のパス(gs://bucketName/fileName 形式)。インスタンスには、ロケーションに対する書き込み権限が必要です。SQL Server インスタンスにのみ適用されます。 |
privateKeyPassword |
必須。秘密鍵を暗号化するパスワード。 |
name |
必須。証明書名。SQL Server インスタンスにのみ適用されます。 |
BackupContext
| JSON 表現 |
|---|
{ "backupId": string, "kind": string, "name": string } |
| フィールド | |
|---|---|
backupId |
バックアップの識別子。 |
kind |
これは常に |
name |
バックアップの名前。形式: projects/{project}/backups/{backup} |
PreCheckMajorVersionUpgradeContext
| JSON 表現 |
|---|
{ "targetDatabaseVersion": enum ( |
| フィールド | |
|---|---|
targetDatabaseVersion |
必須。アップグレード先のターゲット データベース バージョン。 |
preCheckResponse[] |
出力専用。事前チェック オペレーションからのレスポンス。 |
kind |
省略可。これは常に |
共用体フィールド
|
|
maxRuntime |
省略可。事前チェック オペレーションに許容される最大実行時間。
|
PreCheckResponse
| JSON 表現 |
|---|
{ "actionsRequired": [ string ], // Union field |
| フィールド | |
|---|---|
actionsRequired[] |
ユーザーが実行する必要があるアクション。複数のアクションに repeated を使用します。 |
共用体フィールド
|
|
message |
ユーザーに表示されるメッセージ。 |
共用体フィールド
|
|
messageType |
メッセージのタイプ(情報、警告、エラー)。 |
所要時間
| JSON 表現 |
|---|
{ "seconds": string, "nanos": integer } |
| フィールド | |
|---|---|
seconds |
期間の符号付き秒数。-315,576,000,000 ~+315,576,000,000 の範囲(両端を含む)にする必要があります。注: これらの境界は、60 秒/分 * 60 分/時間 * 24 時間/日 * 365.25 日/年 * 10,000 年から計算されます。 |
nanos |
時間のスパンのナノ秒分解能による、秒の符号付き小数以下部分。1 秒未満の期間は、0 の |
StartWorkloadCaptureContext
| JSON 表現 |
|---|
{ "enableLiveReplay": boolean, // Union field |
| フィールド | |
|---|---|
enableLiveReplay |
省略可。true の場合、キャプチャされたワークロードは、別の一時的な Cloud SQL インスタンスで同時に実行されます。この「ライブ再配信」インスタンスは自動的にプロビジョニングされ、ソース インスタンスからクローンが作成されます。false(デフォルト)の場合、ワークロードは保存されるだけで、ライブ再配信は行われません。これは、別の |
共用体フィールド
|
|
replayInstance |
省略可。 |
StopWorkloadCaptureContext
| JSON 表現 |
|---|
{ "abortLiveReplay": boolean } |
| フィールド | |
|---|---|
abortLiveReplay |
省略可。true の場合、同時実行ライブ再配信を直ちに中止し、リプレイされていないトラフィックを破棄して、キャプチャを停止します。false(デフォルト)の場合、キャプチャは新しいトラフィックの記録を停止しますが、キャプチャされたトラフィックのバックログ全体が再生されるまで、ライブ再配信は実行を継続します。 |
StartWorkloadReplayContext
| JSON 表現 |
|---|
{ "replayInstance": string, "workloadId": string } |
| フィールド | |
|---|---|
replayInstance |
必須。キャプチャされたワークロード(SQL クエリ)が実行されている Cloud SQL インスタンスの名前。プロジェクト ID( |
workloadId |
出力専用。リプレイ インスタンスで実行を開始するワークロードの ID。各ワークロード キャプチャは、 |
AcquireSsrsLeaseContext
| JSON 表現 |
|---|
{ // Union field |
| フィールド | |
|---|---|
共用体フィールド
|
|
setupLogin |
SSRS の設定でデータベース サーバーに接続するために設定ログインとして使用するユーザー名。 |
共用体フィールド
|
|
serviceLogin |
SSRS の設定でレポート データベースに接続するためのサービス ログインとして使用するユーザー名。 |
共用体フィールド
|
|
reportDatabase |
SSRS の設定に使用するレポート データベース。 |
共用体フィールド
|
|
duration |
SSRS の設定に必要なリース期間。
|
SqlSubOperationType
| JSON 表現 |
|---|
{ // Union field |
| フィールド | |
|---|---|
共用体フィールド sub_operation_details。オペレーション タイプに対応するサブ オペレーションの詳細。sub_operation_details は次のいずれかになります。 |
|
maintenanceType |
インスタンスで実行するメンテナンスのタイプ。 |
SqlOperationStatus
オペレーションのステータス。
| 列挙型 | |
|---|---|
SQL_OPERATION_STATUS_UNSPECIFIED |
オペレーションの状態は不明です。 |
PENDING |
オペレーションはキューに追加されていますが、まだ開始されていません。 |
RUNNING |
操作は実行中です。 |
DONE |
オペレーションが完了しました。 |
SqlApiWarningCode
| 列挙型 | |
|---|---|
SQL_API_WARNING_CODE_UNSPECIFIED |
Cloud SQL API からの不明または未設定の警告タイプ。 |
REGION_UNREACHABLE |
1 つ以上のリージョンに到達できない場合、警告が表示されます。返される結果セットが不完全な可能性があります。 |
MAX_RESULTS_EXCEEDS_LIMIT |
ユーザーが指定した maxResults パラメータが上限を超えた場合の警告。返される結果セットが不完全である可能性があります。 |
COMPROMISED_CREDENTIALS |
以前に公開データ侵害で侵害された認証情報を使用してユーザーがユーザーを作成または更新しようとしたときに警告します。 |
INTERNAL_STATE_FAILURE |
オペレーションは成功したが、一部の重要でないワークフローの状態が失敗した場合の警告。 |
SqlOperationType
Cloud SQL オペレーションのタイプ。
| 列挙型 | |
|---|---|
SQL_OPERATION_TYPE_UNSPECIFIED |
オペレーション タイプが不明です。 |
IMPORT |
Cloud SQL インスタンスにデータをインポートします。 |
EXPORT |
データを Cloud SQL インスタンスから Cloud Storage バケットにエクスポートします。 |
CREATE |
新しい Cloud SQL インスタンスを作成します。 |
UPDATE |
Cloud SQL インスタンスの設定を更新します。 |
DELETE |
Cloud SQL インスタンスを削除します。 |
RESTART |
Cloud SQL インスタンスを再起動します。 |
BACKUP |
|
SNAPSHOT |
|
BACKUP_VOLUME |
インスタンスのバックアップを実行します。 |
DELETE_VOLUME |
インスタンスのバックアップを削除します。 |
RESTORE_VOLUME |
インスタンスのバックアップを復元します。 |
INJECT_USER |
MOB インスタンスに mysql の特権ユーザーの設定をします。 |
CLONE |
Cloud SQL インスタンスのクローンを作成します。 |
STOP_REPLICA |
Cloud SQL 読み取りレプリカ インスタンスでレプリケーションを停止します。 |
START_REPLICA |
Cloud SQL 読み取りレプリカ インスタンスでレプリケーションを開始します。 |
PROMOTE_REPLICA |
Cloud SQL レプリカ インスタンスを昇格させます。 |
CREATE_REPLICA |
Cloud SQL レプリカ インスタンスを作成します。 |
CREATE_USER |
Cloud SQL インスタンス内に新たなユーザーを作成します。 |
DELETE_USER |
Cloud SQL インスタンスからユーザーを削除します。 |
UPDATE_USER |
Cloud SQL インスタンスの既存のユーザーを更新します。指定されたユーザー名のユーザーが存在しない場合は、新しいユーザーが作成されます。 |
CREATE_DATABASE |
Cloud SQL インスタンスにデータベースを作成します。 |
DELETE_DATABASE |
Cloud SQL インスタンス内のデータベースを削除します。 |
UPDATE_DATABASE |
Cloud SQL インスタンスのデータベースを更新します。 |
FAILOVER |
HA 対応の Cloud SQL フェイルオーバー レプリカのフェイルオーバーを実行します。 |
DELETE_BACKUP |
バックアップ実行により取得されたバックアップを削除します。 |
RECREATE_REPLICA |
|
TRUNCATE_LOG |
MySQL の一般的なログテーブルまたはスロー ログテーブルを切り捨てます。 |
DEMOTE_MASTER |
スタンドアロン インスタンスを外部データベース サーバーの Cloud SQL 読み取りレプリカに降格します。 |
MAINTENANCE |
インスタンスが現在メンテナンス中であることを示します。通常、メンテナンスを行うとインスタンスは 1 ~ 3 分間使用できなくなります。 |
ENABLE_PRIVATE_IP |
このフィールドは非推奨で、今後のバージョンの API では削除される予定です。 |
DEFER_MAINTENANCE |
|
CREATE_CLONE |
クローン インスタンスを作成します。 |
RESCHEDULE_MAINTENANCE |
メンテナンスのスケジュールを別の時間に変更します。 |
START_EXTERNAL_SYNC |
Cloud SQL EM レプリカから外部プライマリ インスタンスへの外部同期を開始します。 |
LOG_CLEANUP |
インスタンスの古いデータディスクからログを復元します。 |
AUTO_RESTART |
自動復旧のために HA 対応の Cloud SQL データベースの自動再起動を実行します。 |
REENCRYPT |
最新の鍵バージョンで CMEK インスタンスを再暗号化します。 |
SWITCHOVER |
プライマリとレプリカのペアのロールを切り替えます。ターゲット インスタンスはレプリカである必要があります。 |
UPDATE_BACKUP |
バックアップを更新する。 |
ACQUIRE_SSRS_LEASE |
SQL Server Reporting Services(SSRS)の設定用のリースを取得します。 |
RELEASE_SSRS_LEASE |
SQL Server Reporting Services(SSRS)の設定のリースを解放します。 |
RECONFIGURE_OLD_PRIMARY |
レプリカの昇格オペレーション後に古いプライマリを再構成します。古いプライマリに対するプロモート オペレーションの効果は、レプリカに対して実行されるプロモート レプリカ オペレーションとは非同期で、このオペレーションで実行されます。 |
CLUSTER_MAINTENANCE |
インスタンス、そのリードレプリカ、カスケード レプリカがメンテナンス中であることを示します。通常、メンテナンスはレプリカのグループで最初に開始され、次にプライマリ インスタンスで開始されます。通常、メンテナンスを行うと、各インスタンスは 1 ~ 3 分間使用できなくなります。 |
SELF_SERVICE_MAINTENANCE |
インスタンス(およびそのレプリカ)が現在メンテナンス中であることを示します。これは、SSM を使用してセルフサービス リクエストとして開始されます。通常、メンテナンスを行うとインスタンスは 1 ~ 3 分間使用できなくなります。 |
SWITCHOVER_TO_REPLICA |
プライマリ インスタンスをレプリカに切り替えます。このオペレーションは、元のプライマリ インスタンスへのスイッチオーバー オペレーションの一部として実行されます。 |
MAJOR_VERSION_UPGRADE |
Cloud SQL インスタンスのメジャー バージョンを更新します。 |
ADVANCED_BACKUP |
非推奨: ADVANCED_BACKUP は非推奨になりました。代わりに ENHANCED_BACKUP を使用してください。 |
MANAGE_BACKUP |
Cloud SQL インスタンスの BackupTier を変更します。 |
ENHANCED_BACKUP |
拡張バックアップ ティアの Cloud SQL インスタンスのバックアップを作成します。 |
REPAIR_READ_POOL |
読み取りプール全体または読み取りプール内の指定された読み取りプールノードを修復します。 |
CREATE_READ_POOL |
Cloud SQL 読み取りプール インスタンスを作成します。 |
PRE_CHECK_MAJOR_VERSION_UPGRADE |
メジャー バージョン アップグレード オペレーションの事前チェックを行います。 |
SETUP_MIGRATION |
このオペレーション タイプは、オペレーションの意図で定義されている、構成、レプリケーション、切り替え/バック、データ再シードなど、複数ステップのセットアップ移行ワークフローの個々のステップを表します。 |
CREATE_BLUE_GREEN_DEPLOYMENT |
新しい Blue/Green デプロイを作成します。 |
SWITCHOVER_BLUE_GREEN_DEPLOYMENT |
Blue/Green デプロイを切り替えます。 |
DELETE_BLUE_GREEN_DEPLOYMENT |
Blue/Green デプロイを削除します。 |
SqlFileType
| 列挙型 | |
|---|---|
SQL_FILE_TYPE_UNSPECIFIED |
不明なファイル形式。 |
SQL |
SQL ステートメントを含むファイル。 |
CSV |
CSV 形式のファイル。 |
BAK |
|
TDE |
TDE 証明書。 |
BakType
| 列挙型 | |
|---|---|
BAK_TYPE_UNSPECIFIED |
デフォルトのタイプ。 |
FULL |
フル バックアップ。 |
DIFF |
差分バックアップ。 |
TLOG |
トランザクション ログのバックアップ |
SqlDatabaseVersion
データベース エンジンの種類とバージョン。
| 列挙型 | |
|---|---|
SQL_DATABASE_VERSION_UNSPECIFIED |
これは不明なデータベース バージョンです。 |
MYSQL_5_1 |
データベースのバージョンは MySQL 5.1 です。 |
MYSQL_5_5 |
データベース バージョンは MySQL 5.5 です。 |
MYSQL_5_6 |
データベースのバージョンが MySQL 5.6 である。 |
MYSQL_5_7 |
データベースのバージョンは MySQL 5.7 です。 |
MYSQL_8_0 |
データベースのバージョンは MySQL 8 です。 |
MYSQL_8_0_18 |
データベースのメジャー バージョンは MySQL 8.0 で、マイナー バージョンは 18 です。 |
MYSQL_8_0_26 |
データベースのメジャー バージョンは MySQL 8.0、マイナー バージョンは 26 です。 |
MYSQL_8_0_27 |
データベースのメジャー バージョンは MySQL 8.0、マイナー バージョンは 27 です。 |
MYSQL_8_0_28 |
データベースのメジャー バージョンは MySQL 8.0、マイナー バージョンは 28 です。 |
MYSQL_8_0_29 |
データベースのメジャー バージョンは MySQL 8.0 で、マイナー バージョンは 29 です。 |
MYSQL_8_0_30 |
データベースのメジャー バージョンは MySQL 8.0、マイナー バージョンは 30 です。 |
MYSQL_8_0_31 |
データベースのメジャー バージョンは MySQL 8.0 で、マイナー バージョンは 31 です。 |
MYSQL_8_0_32 |
データベースのメジャー バージョンは MySQL 8.0 で、マイナー バージョンは 32 です。 |
MYSQL_8_0_33 |
データベースのメジャー バージョンは MySQL 8.0、マイナー バージョンは 33 です。 |
MYSQL_8_0_34 |
データベースのメジャー バージョンは MySQL 8.0 で、マイナー バージョンは 34 です。 |
MYSQL_8_0_35 |
データベースのメジャー バージョンは MySQL 8.0、マイナー バージョンは 35 です。 |
MYSQL_8_0_36 |
データベースのメジャー バージョンは MySQL 8.0、マイナー バージョンは 36 です。 |
MYSQL_8_0_37 |
データベースのメジャー バージョンは MySQL 8.0、マイナー バージョンは 37 です。 |
MYSQL_8_0_39 |
データベースのメジャー バージョンは MySQL 8.0、マイナー バージョンは 39 です。 |
MYSQL_8_0_40 |
データベースのメジャー バージョンは MySQL 8.0 で、マイナー バージョンは 40 です。 |
MYSQL_8_0_41 |
データベースのメジャー バージョンは MySQL 8.0 で、マイナー バージョンは 41 です。 |
MYSQL_8_0_42 |
データベースのメジャー バージョンは MySQL 8.0 で、マイナー バージョンは 42 です。 |
MYSQL_8_0_43 |
データベースのメジャー バージョンは MySQL 8.0 で、マイナー バージョンは 43 です。 |
MYSQL_8_0_44 |
データベースのメジャー バージョンは MySQL 8.0、マイナー バージョンは 44 です。 |
MYSQL_8_0_45 |
データベースのメジャー バージョンは MySQL 8.0、マイナー バージョンは 45 です。 |
MYSQL_8_0_46 |
データベースのメジャー バージョンは MySQL 8.0 で、マイナー バージョンは 46 です。 |
MYSQL_8_4 |
データベースのバージョンは MySQL 8.4 です。 |
MYSQL_9_7 |
データベース バージョンは MySQL 9.7 です。 |
SQLSERVER_2017_STANDARD |
データベースのバージョンは SQL Server 2017 Standard です。 |
SQLSERVER_2017_ENTERPRISE |
データベースのバージョンは SQL Server 2017 Enterprise です。 |
SQLSERVER_2017_EXPRESS |
データベースのバージョンは SQL Server 2017 Express です。 |
SQLSERVER_2017_WEB |
データベースのバージョンは SQL Server 2017 Web です。 |
POSTGRES_9_6 |
データベースのバージョンは PostgreSQL 9.6 です。 |
POSTGRES_10 |
データベースのバージョンは PostgreSQL 10 です。 |
POSTGRES_11 |
データベースのバージョンは PostgreSQL 11 です。 |
POSTGRES_12 |
データベースのバージョンは PostgreSQL 12 です。 |
POSTGRES_13 |
データベースのバージョンは PostgreSQL 13 です。 |
POSTGRES_14 |
データベースのバージョンは PostgreSQL 14 です。 |
POSTGRES_15 |
データベースのバージョンは PostgreSQL 15 です。 |
POSTGRES_16 |
データベースのバージョンは PostgreSQL 16 です。 |
POSTGRES_17 |
データベースのバージョンは PostgreSQL 17 です。 |
POSTGRES_18 |
データベースのバージョンは PostgreSQL 18 です。 |
POSTGRES_19 |
データベースのバージョンは PostgreSQL 19 です。 |
POSTGRES_20 |
データベースのバージョンは PostgreSQL 20 です。 |
SQLSERVER_2019_STANDARD |
データベースのバージョンは SQL Server 2019 Standard です。 |
SQLSERVER_2019_ENTERPRISE |
データベースのバージョンが SQL Server 2019 Enterprise である。 |
SQLSERVER_2019_EXPRESS |
データベースのバージョンは SQL Server 2019 Express です。 |
SQLSERVER_2019_WEB |
データベースのバージョンは SQL Server 2019 Web です。 |
SQLSERVER_2022_STANDARD |
データベースのバージョンは SQL Server 2022 Standard です。 |
SQLSERVER_2022_ENTERPRISE |
データベース バージョンは SQL Server 2022 Enterprise です。 |
SQLSERVER_2022_EXPRESS |
データベースのバージョンは SQL Server 2022 Express です。 |
SQLSERVER_2022_WEB |
データベースのバージョンは SQL Server 2022 Web です。 |
SQLSERVER_2025_STANDARD |
データベースのバージョンは SQL Server 2025 Standard です。 |
SQLSERVER_2025_ENTERPRISE |
データベースのバージョンが SQL Server 2025 Enterprise である。 |
SQLSERVER_2025_EXPRESS |
データベースのバージョンは SQL Server 2025 Express です。 |
MessageType
メッセージのタイプ。情報、警告、ユーザーの介入を必要とするエラーのいずれかです。
| 列挙型 | |
|---|---|
MESSAGE_TYPE_UNSPECIFIED |
意図しない動作の変更を防ぐため、デフォルトの未指定値。 |
INFO |
対応を必要としない一般的な情報メッセージ。 |
WARNING |
アップグレードに影響する可能性があるが、アップグレードをブロックしない警告。 |
ERROR |
アップグレードを続行する前にユーザーが解決する必要があるエラー。 |
SqlMaintenanceType
インスタンスで実施されるメンテナンスのタイプ。
| 列挙型 | |
|---|---|
SQL_MAINTENANCE_TYPE_UNSPECIFIED |
メンテナンス タイプが指定されていません。 |
INSTANCE_MAINTENANCE |
スタンドアロン インスタンスがメンテナンス中であることを示します。インスタンスは、プライマリ インスタンスまたはレプリカのいずれかです。 |
REPLICA_INCLUDED_MAINTENANCE |
プライマリ インスタンスと、カスケード レプリカを含むすべてのレプリカがメンテナンス中であることを示します。メンテナンスは、最初にレプリカのグループに対して実行され、次にプライマリ インスタンスに対して実行されます。 |
INSTANCE_SELF_SERVICE_MAINTENANCE |
セルフサービスによって開始されたスタンドアロン インスタンスのメンテナンスが進行中であることを示します。インスタンスは、プライマリ インスタンスまたはレプリカのいずれかです。 |
REPLICA_INCLUDED_SELF_SERVICE_MAINTENANCE |
プライマリ インスタンスとそのすべてのレプリカで、セルフサービスによって開始されたメンテナンスが進行中であることを示します。メンテナンスは、最初にレプリカのグループに対して実行され、次にプライマリ インスタンスに対して実行されます。 |
ツールのアノテーション
ツールのアノテーションは、特定のツールの基本的なリスクを説明するために MCP クライアントに送信されます。ほとんどのクライアントはこれらのヒントを信頼できないものとして扱いますが、確認プロンプトをユーザーに送信するタイミングを決定するために使用できます。
タイトル文字列とともに、次のブール値ヒントが定義されています。
readOnlyHint: true の場合、ツールは環境を変更しません。デフォルトは false です。destructiveHint: true の場合、ツールは破壊的なアクションを実行できます。false の場合、ツールは追加アクションのみを実行できます。デフォルト値は true です。idempotentHint: true の場合、同じ引数でツールを繰り返し呼び出しても、環境に副次的な影響はありません。デフォルトは false です。openWorldHint: true の場合、ツールは外部エンティティの「オープンワールド」とやり取りできます。false の場合、ツールは内部エンティティとのみやり取りできます。たとえば、ウェブ検索ツールはオープン ワールドですが、メモリツールはオープン ワールドではありません。
破壊的ヒント: ❌ | べき等ヒント: ❌ | 読み取り専用ヒント: ❌ | オープン ワールド ヒント: ❌