MySQL
| PostgreSQL
| SQL Server
このページでは、Cloud SQL インスタンスへのデータのインポートとエクスポートをキャンセルする方法について説明します。このデータは SQL ダンプファイル または CSV ファイル に含まれています。
始める前に
データのインポートとエクスポートをキャンセルするには、インポートまたはエクスポート オペレーションの ID が必要です。キャンセルするオペレーションを Cloud SQL が認識できるように、この ID を gcloud
または REST API コマンドで指定する必要があります。
オペレーション ID はレスポンスの name
フィールドに返されます。この ID を取得するには、SQL ダンプファイルを使用してエクスポートとインポートを行う をご覧ください。
オペレーション ID は、Cloud SQL インスタンスに対する operations.list
呼び出しによって確認することもできます。
インポートまたはエクスポートのオペレーションをキャンセルする
インポートやエクスポートのオペレーションをキャンセルするには、gcloud
または REST API コマンドを使用します。
gcloud
gcloud sql operations cancel
コマンドを使用してオペレーションをキャンセルします。
gcloud sql operations cancel operation-ID
operation-ID 変数は、オペレーションの ID に置き換えます。詳細については、始める前に をご覧ください。
REST v1
リクエストのデータを使用する前に、次のように置き換えます。
project-ID : プロジェクト ID。
operation-ID : インポートまたはエクスポートのオペレーションの ID。詳細については、始める前に をご覧ください。
HTTP メソッドと URL:
POST https://sqladmin.googleapis.com/v1/projects/project-ID /operations/operation-ID /cancel
リクエストを送信するには、次のいずれかのオプションを開きます。
curl(Linux、macOS、Cloud Shell)
次のコマンドを実行します。
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ -d "" \ "https://sqladmin.googleapis.com/v1/projects/project-ID /operations/operation-ID /cancel"
PowerShell(Windows)
次のコマンドを実行します。
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method POST ` -Headers $headers ` -Uri "https://sqladmin.googleapis.com/v1/projects/project-ID /operations/operation-ID /cancel" | Select-Object -Expand Content
次のような JSON レスポンスが返されます。
この REST API 呼び出しはレスポンスを返しません。インポート オペレーションやエクスポート オペレーションのキャンセル ステータスの確認について詳しくは、キャンセル ステータスを確認する をご覧ください。
REST v1beta4
リクエストのデータを使用する前に、次のように置き換えます。
project-ID : プロジェクト ID。
operation-ID : インポートまたはエクスポートのオペレーションの ID。詳細については、始める前に をご覧ください。
HTTP メソッドと URL:
POST https://sqladmin.googleapis.com/v1beta4/projects/project-ID /operations/operation-ID /cancel
リクエストを送信するには、次のいずれかのオプションを開きます。
curl(Linux、macOS、Cloud Shell)
次のコマンドを実行します。
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ -d "" \ "https://sqladmin.googleapis.com/v1beta4/projects/project-ID /operations/operation-ID /cancel"
PowerShell(Windows)
次のコマンドを実行します。
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method POST ` -Headers $headers ` -Uri "https://sqladmin.googleapis.com/v1beta4/projects/project-ID /operations/operation-ID /cancel" | Select-Object -Expand Content
次のような JSON レスポンスが返されます。
この REST API 呼び出しはレスポンスを返しません。インポート オペレーションやエクスポート オペレーションのキャンセル ステータスの確認について詳しくは、キャンセル ステータスを確認する をご覧ください。
キャンセル ステータスを確認する
gcloud
または REST API コマンドを使用して、キャンセルされたインポートまたはエクスポートのオペレーションのステータスを確認できます。
REST v1
リクエストのデータを使用する前に、次のように置き換えます。
project-ID : プロジェクト ID。
operation-ID : インポートまたはエクスポートのオペレーションの ID。詳細については、始める前に をご覧ください。
HTTP メソッドと URL:
GET https://sqladmin.googleapis.com/v1/projects/project-ID /operations/operation-ID
リクエストを送信するには、次のいずれかのオプションを開きます。
curl(Linux、macOS、Cloud Shell)
次のコマンドを実行します。
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://sqladmin.googleapis.com/v1/projects/project-ID /operations/operation-ID "
PowerShell(Windows)
次のコマンドを実行します。
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method GET ` -Headers $headers ` -Uri "https://sqladmin.googleapis.com/v1/projects/project-ID /operations/operation-ID " | Select-Object -Expand Content
次のような JSON レスポンスが返されます。
レスポンス
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/v1/projects/project-ID ",
"status": "DONE",
"user": "user@example.com",
"insertTime": "2022-11-08T22:12:58.199Z",
"startTime": "2022-11-08T22:13:04.798Z",
"endTime": "2022-11-08T22:13:45.862Z",
"error": {
"kind": "sql#operationErrors",
"errors": [
{
"kind": "sql#operationError",
"code": "CANCEL_SUCCESSFUL",
"message": "Operation successfully cancelled"
}
]
},
"operationType": "EXPORT",
"exportContext": {
"uri": "gs://replica-bucket/source-database.sql",
"kind": "sql#exportContext",
"sqlExportOptions": {
"schemaOnly": false,
"mysqlExportOptions": {
"masterData": 0
}
},
"fileType": "SQL"
},
"name": "operation-ID ",
"targetId": "cloud-sql-instance-display-name ",
"selfLink": "https://sqladmin.googleapis.com/v1/projects/project-ID /operations/operation-ID ",
"targetProject": "project-ID ",
"instanceUid": "cloud-sql-instance-ID "
}
REST v1beta4
リクエストのデータを使用する前に、次のように置き換えます。
project-ID : プロジェクト ID。
operation-ID : インポートまたはエクスポートのオペレーションの ID。詳細については、始める前に をご覧ください。
HTTP メソッドと URL:
GET https://sqladmin.googleapis.com/v1beta4/projects/project-ID /operations/operation-ID
リクエストを送信するには、次のいずれかのオプションを開きます。
curl(Linux、macOS、Cloud Shell)
次のコマンドを実行します。
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://sqladmin.googleapis.com/v1beta4/projects/project-ID /operations/operation-ID "
PowerShell(Windows)
次のコマンドを実行します。
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method GET ` -Headers $headers ` -Uri "https://sqladmin.googleapis.com/v1beta4/projects/project-ID /operations/operation-ID " | Select-Object -Expand Content
次のような JSON レスポンスが返されます。
レスポンス
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/v1beta4/projects/project-ID ",
"status": "DONE",
"user": "user@example.com",
"insertTime": "2022-11-08T22:12:58.199Z",
"startTime": "2022-11-08T22:13:04.798Z",
"endTime": "2022-11-08T22:13:45.862Z",
"error": {
"kind": "sql#operationErrors",
"errors": [
{
"kind": "sql#operationError",
"code": "CANCEL_SUCCESSFUL",
"message": "Operation successfully cancelled"
}
]
},
"operationType": "EXPORT",
"exportContext": {
"uri": "gs://replica-bucket/source-database.sql",
"kind": "sql#exportContext",
"sqlExportOptions": {
"schemaOnly": false,
"mysqlExportOptions": {
"masterData": 0
}
},
"fileType": "SQL"
},
"name": "operation-ID ",
"targetId": "cloud-sql-instance-display-name ",
"selfLink": "https://sqladmin.googleapis.com/v1beta4/projects/project-ID /operations/operation-ID ",
"targetProject": "project-ID ",
"instanceUid": "cloud-sql-instance-ID "
}
トラブルシューティング
問題
トラブルシューティング
エラー メッセージ: You can't cancel operation [operation-ID] because
this operation isn't in progress.
完了した、失敗した、またはキャンセルされたインポートまたはエクスポートのオペレーションをキャンセルしようとしています。実行中のオペレーションはキャンセルできます。
エラー メッセージ: You can't cancel operation [operation-ID] because
Cloud SQL doesn't support the cancellation of an [operation-type]
operation.
Cloud SQL には、IMPORT
または EXPORT
以外のオペレーション タイプ があるため、オペレーションのキャンセルをサポートしていません。
エラー メッセージ: The [operation-type] operation isn't cancelled. Wait
and retry in a few seconds.
現時点では、Cloud SQL はインポート オペレーションとエクスポート オペレーションをキャンセルできません。しばらくしてから、もう一度お試しください。問題が解決しない場合は、Google Cloud サポート までご連絡ください。
次のステップ