このページでは、標準バックアップ オプションを使用するインスタンスのバックアップを管理する方法について説明します。これには、自動バックアップのスケジュールと無効化、オンデマンド バックアップの作成と管理、Cloud SQL インスタンスのバックアップの表示が含まれます。インスタンスで拡張バックアップを使用している場合は、拡張バックアップを管理するをご覧ください。
バックアップの仕組みについて詳しくは、Cloud SQL バックアップの概要をご覧ください。Cloud SQL インスタンスで使用可能なバックアップ オプションの詳細については、バックアップ オプションを選択するをご覧ください。
オンデマンド バックアップの作成
オンデマンド バックアップを作成するには:
コンソール
-
Google Cloud コンソールで、Cloud SQL の [インスタンス] ページに移動します。
- インスタンスの [概要] ページを開くには、インスタンス名をクリックします。
- SQL ナビゲーション メニューから [バックアップ] を選択します。
- [バックアップを作成] をクリックします。
- [バックアップを作成] ページで、必要に応じて説明を追加し、[作成] をクリックします。
gcloud
バックアップを作成します。
gcloud sql backups create \ --async \ --instance=INSTANCE_NAME
--description
パラメータを使用してバックアップの説明を入力できます。
カスタム ロケーションにバックアップを作成するには:
gcloud sql backups create \ --async \ --instance=INSTANCE_NAME \ --location=BACKUP_LOCATION
REST v1
リクエストのデータを使用する前に、次のように置き換えます。
- project-id: プロジェクト ID
- instance-id: インスタンス ID
HTTP メソッドと URL:
POST https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id/backupRuns
リクエストを送信するには、次のいずれかのオプションを展開します。
次のような JSON レスポンスが返されます。
REST v1beta4
リクエストのデータを使用する前に、次のように置き換えます。
- project-id: プロジェクト ID
- instance-id: インスタンス ID
HTTP メソッドと URL:
POST https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id/backupRuns
リクエストを送信するには、次のいずれかのオプションを展開します。
次のような JSON レスポンスが返されます。
自動バックアップを構成する
自動バックアップは、インスタンスの実行中にスケジュールされた頻度で実行されます。自動バックアップの保持期間を設定することもできます。自動バックアップの仕組みについて詳しくは、自動バックアップをご覧ください。
自動バックアップのスケジュール
インスタンスの自動バックアップをスケジュールするには:
コンソール
-
Google Cloud コンソールで、Cloud SQL の [インスタンス] ページに移動します。
- インスタンスの [概要] ページを開くには、インスタンス名をクリックします。
- SQL ナビゲーション メニューから [バックアップ] を選択します。
- [設定] の横にある [編集] をクリックします。
- データを自動的にバックアップする時間枠を選択します。
- [保存] をクリックします。
gcloud
- インスタンスを編集してバックアップ開始時間を指定します。
gcloud sql instances patch INSTANCE_NAME --backup-start-time=HH:MM
backup-start-time
パラメータは、UTC±00 タイムゾーンの 24 時間形式で、4 時間のバックアップ期間の開始時間を指定します。バックアップはバックアップ時間枠の任意の時刻に開始できます。 - 変更を確定します。
gcloud sql instances describe INSTANCE_NAME
backupConfiguration
セクションで、enabled: true
と指定した時刻が表示されていることを確認します。
Terraform
データベースのバックアップを作成するには、Terraform リソースを使用します。
変更を適用する
Google Cloud プロジェクトで Terraform 構成を適用するには、次のセクションの手順を完了します。
Cloud Shell を準備する
- Cloud Shell を起動します。
-
Terraform 構成を適用するデフォルトの Google Cloud プロジェクトを設定します。
このコマンドは、プロジェクトごとに 1 回だけ実行する必要があります。これは任意のディレクトリで実行できます。
export GOOGLE_CLOUD_PROJECT=PROJECT_ID
Terraform 構成ファイルに明示的な値を設定すると、環境変数がオーバーライドされます。
ディレクトリを準備する
Terraform 構成ファイルには独自のディレクトリ(ルート モジュールとも呼ばれます)が必要です。
-
Cloud Shell で、ディレクトリを作成し、そのディレクトリ内に新しいファイルを作成します。ファイルの拡張子は
.tf
にする必要があります(例:main.tf
)。このチュートリアルでは、このファイルをmain.tf
とします。mkdir DIRECTORY && cd DIRECTORY && touch main.tf
-
チュートリアルを使用している場合は、各セクションまたはステップのサンプルコードをコピーできます。
新しく作成した
main.tf
にサンプルコードをコピーします。必要に応じて、GitHub からコードをコピーします。Terraform スニペットがエンドツーエンドのソリューションの一部である場合は、この方法をおすすめします。
- 環境に適用するサンプル パラメータを確認し、変更します。
- 変更を保存します。
-
Terraform を初期化します。これは、ディレクトリごとに 1 回だけ行います。
terraform init
最新バージョンの Google プロバイダを使用する場合は、
-upgrade
オプションを使用します。terraform init -upgrade
変更を適用する
-
構成を確認して、Terraform が作成または更新するリソースが想定どおりであることを確認します。
terraform plan
必要に応じて構成を修正します。
-
次のコマンドを実行します。プロンプトで「
yes
」と入力して、Terraform 構成を適用します。terraform apply
Terraform に「Apply complete!」というメッセージが表示されるまで待ちます。
- Google Cloud プロジェクトを開いて結果を表示します。 Google Cloud コンソールの UI でリソースに移動して、Terraform によって作成または更新されたことを確認します。
変更を削除する
変更を削除するには、次の手順を行います。
- 削除の保護を無効にするには、Terraform 構成ファイルで
deletion_protection
引数をfalse
に設定します。deletion_protection = "false"
- 次のコマンドを実行します。プロンプトで「
yes
」と入力して、更新された Terraform 構成を適用します。terraform apply
-
次のコマンドを実行します。プロンプトで「
yes
」と入力して、以前に Terraform 構成で適用されたリソースを削除します。terraform destroy
REST v1
リクエストのデータを使用する前に、次のように置き換えます。
- PROJECT_ID: インスタンスが含まれている Google Cloud プロジェクトの ID またはプロジェクト番号
- INSTANCE_NAME: 高可用性構成を行うプライマリまたはリードレプリカ インスタンスの名前
- START_TIME: 時刻(時と分)
HTTP メソッドと URL:
PATCH https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_NAME
リクエストの本文(JSON):
{ "settings": { "backupConfiguration": { "startTime": "START_TIME", "enabled": true, "binaryLogEnabled": true } } }
リクエストを送信するには、次のいずれかのオプションを展開します。
次のような JSON レスポンスが返されます。
backupConfiguration
オブジェクト内で pointInTimeEnabled
を true
に設定することにより、バイナリ ロギングを同時に有効にすることができます。
REST v1beta4
backupConfiguration
オブジェクト内で binaryLogEnabled
を true
に設定することにより、バイナリ ロギングを同時に有効にすることができます。
リクエストのデータを使用する前に、次のように置き換えます。
- PROJECT_ID: インスタンスが含まれている Google Cloud プロジェクトの ID またはプロジェクト番号
- INSTANCE_NAME: 高可用性構成を行うプライマリまたはリードレプリカ インスタンスの名前
- START_TIME: 時刻(時と分)
HTTP メソッドと URL:
PATCH https://sqladmin.googleapis.com/v1beta4/projects/PROJECT_ID/instances/INSTANCE_NAME
リクエストの本文(JSON):
{ "settings": { "backupConfiguration": { "startTime": "START_TIME", "enabled": true, "binaryLogEnabled": true } } }
リクエストを送信するには、次のいずれかのオプションを展開します。
次のような JSON レスポンスが返されます。
自動バックアップの保持期間を設定する
保持する自動バックアップの数を設定するには:
コンソール
-
Google Cloud コンソールで、Cloud SQL の [インスタンス] ページに移動します。
- インスタンスの [概要] ページを開くには、インスタンス名をクリックします。
- SQL ナビゲーション メニューから [バックアップ] を選択します。
- [編集] をクリックします。
- [バックアップを自動化する] セクションで、[詳細オプション] を開きます。
- 一度に保存するバックアップの数を入力します。
- [保存] をクリックします。
gcloud
インスタンスを編集して、保持する自動バックアップの数を設定します。値はデフォルト(7)以上にする必要があります。
gcloud sql instances patch INSTANCE_NAME \ --retained-backups-count=NUM_TO_RETAIN
Terraform
データベース インスタンスのために保持する自動バックアップの数を指定するには、Terraform リソースを使用します。
REST v1beta4
リクエストのデータを使用する前に、次のように置き換えます。
- unit: 省略可: 保持単位には整数または文字列を指定できます。現在サポートされている(デフォルトの)値は、1 または "COUNT" です。
- num-to-retain: 保持する自動バックアップの数(1~365)
- project-id: プロジェクト ID
- instance-id: インスタンス ID
HTTP メソッドと URL:
PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id
リクエストの本文(JSON):
{ "settings": { "backupConfiguration": { "backupRetentionSettings": { "retentionUnit": unit, "retainedBackups": "num-to-retain" } } } }
リクエストを送信するには、次のいずれかのオプションを展開します。
次のような JSON レスポンスが返されます。
自動バックアップを無効にする
インスタンスの自動バックアップを無効にするには:
コンソール
-
Google Cloud コンソールで、Cloud SQL の [インスタンス] ページに移動します。
- インスタンスの [概要] ページを開くには、インスタンス名をクリックします。
- SQL ナビゲーション メニューから [バックアップ] を選択します。
- [自動バックアップを管理] をクリックします。
- [バックアップを自動化する] のチェックボックスをオフにします。
- [保存して再起動] をクリックします。
gcloud
インスタンスを編集してバックアップを無効にします。
gcloud sql instances patch INSTANCE_NAME \ --no-backup
REST v1
リクエストのデータを使用する前に、次のように置き換えます。
- project-id: プロジェクト ID
- instance-id: インスタンス ID
HTTP メソッドと URL:
PATCH https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id
リクエストの本文(JSON):
{ "settings": { "backupConfiguration": { "enabled": false, "binaryLogEnabled": false } } }
リクエストを送信するには、次のいずれかのオプションを展開します。
次のような JSON レスポンスが返されます。
REST v1beta4
リクエストのデータを使用する前に、次のように置き換えます。
- project-id: プロジェクト ID
- instance-id: インスタンス ID
HTTP メソッドと URL:
PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id
リクエストの本文(JSON):
{ "settings": { "backupConfiguration": { "enabled": false, "binaryLogEnabled": false } } }
リクエストを送信するには、次のいずれかのオプションを展開します。
次のような JSON レスポンスが返されます。
バックアップを削除する
自動バックアップやオンデマンド バックアップは削除できます。
MySQL インスタンスでは、バックアップを削除しても、バックアップと同じサイズが解放されるとは限りません。これは、バックアップは増分で行われるため、新しいバックアップの整合性を維持する目的で、削除された古いバックアップの内容の一部が新しいバックアップに転送されるためです。コンソール
-
Google Cloud コンソールで、Cloud SQL の [インスタンス] ページに移動します。
- インスタンスの [概要] ページを開くには、インスタンス名をクリックします。
- SQL ナビゲーション メニューから [バックアップ] を選択します。
- 削除するバックアップのその他の操作アイコン(
)をクリックします。
- [削除] を選択します。
- [バックアップを削除] ウィンドウで、フィールドに「
Delete
」と入力して [削除] をクリックします。
gcloud
Cloud SQL インスタンスのバックアップを削除します。
gcloud beta sql backups delete BACKUP_ID \ --instance INSTANCE_NAME
パラメータの完全なリストについては、gcloud beta sql backups delete コマンドのリファレンス ページをご覧ください。
REST v1
- バックアップを一覧表示して、削除するバックアップの ID を取得します。
リクエストのデータを使用する前に、次のように置き換えます。
- project-id: プロジェクト ID
- instance-id: インスタンス ID
HTTP メソッドと URL:
GET https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id/backupRuns
リクエストを送信するには、次のいずれかのオプションを展開します。
次のような JSON レスポンスが返されます。
-
バックアップを削除します。
リクエストのデータを使用する前に、次のように置き換えます。
- project-id: プロジェクト ID
- instance-id: インスタンス ID
- backup-id: バックアップ ID
HTTP メソッドと URL:
DELETE https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id/backupRuns/backup-id
リクエストを送信するには、次のいずれかのオプションを展開します。
次のような JSON レスポンスが返されます。
REST v1beta4
- バックアップを一覧表示して、削除するバックアップの ID を取得します。
リクエストのデータを使用する前に、次のように置き換えます。
- project-id: プロジェクト ID
- instance-id: インスタンス ID
HTTP メソッドと URL:
GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id/backupRuns
リクエストを送信するには、次のいずれかのオプションを展開します。
次のような JSON レスポンスが返されます。
-
バックアップを削除します。
リクエストのデータを使用する前に、次のように置き換えます。
- project-id: プロジェクト ID
- instance-id: インスタンス ID
- backup-id: バックアップ ID
HTTP メソッドと URL:
DELETE https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id/backupRuns/backup-id
リクエストを送信するには、次のいずれかのオプションを展開します。
次のような JSON レスポンスが返されます。
バックアップのカスタム ロケーションの設定
規制で義務付けられている場合にのみ、カスタム バックアップ ロケーションを使用してください。規制で必要とされない場合は、デフォルトのマルチリージョン バックアップ ロケーションを使用します。
カスタム ロケーションは、オンデマンド バックアップと自動バックアップに使用できます。有効なロケーションの値の一覧については、インスタンスのロケーションをご覧ください。
カスタム ロケーションでインスタンスを更新するには:
コンソール
-
Google Cloud コンソールで、Cloud SQL の [インスタンス] ページに移動します。
- インスタンスの [概要] ページを開くには、インスタンス名をクリックします。
- SQL ナビゲーション メニューから [バックアップ] を選択します。
- [設定] の横にある [編集] をクリックします。
- [自動バックアップ] セクションで、[詳細オプション] を開きます。
- [マルチリージョン(デフォルト)] または [リージョン] をクリックします。
- [ロケーション] プルダウン メニューからロケーションを選択します。
- [保存] をクリックします。
gcloud
リファレンス情報については、gcloud sql instances patch をご覧ください。
gcloud sql instances patch INSTANCE_NAME \ --backup-location=BACKUP_LOCATION
Terraform
データベース インスタンスのバックアップのカスタム ロケーションを指定するには、Terraform リソースを使用します。
REST v1
バックアップ ロケーションにインスタンスの settings.backupConfiguration.location
パラメータを使用します。
リクエストのデータを使用する前に、次のように置き換えます。
- region: プロジェクトのリージョン
- backup-region: バックアップのリージョン
- project-id: プロジェクト ID
- instance-id: インスタンス ID
HTTP メソッドと URL:
PATCH https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id
リクエストの本文(JSON):
{ "region": "region" "settings": { "backupConfiguration": { "location": "backup-region", "enabled": true, } } }
リクエストを送信するには、次のいずれかのオプションを展開します。
次のような JSON レスポンスが返されます。
REST v1beta4
バックアップ ロケーションにインスタンスの settings.backupConfiguration.location
パラメータを使用します。
リクエストのデータを使用する前に、次のように置き換えます。
- region: プロジェクトのリージョン
- backup-region: バックアップのリージョン
- project-id: プロジェクト ID
- instance-id: インスタンス ID
HTTP メソッドと URL:
PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id
リクエストの本文(JSON):
{ "region": "region" "settings": { "backupConfiguration": { "location": "backup-region", "enabled": true, } } }
リクエストを送信するには、次のいずれかのオプションを展開します。
次のような JSON レスポンスが返されます。
バックアップのリストを表示する
バックアップのリストとバックアップの詳細を表示するには、次のオプションを使用します。
Google Cloud コンソールでは、スキップされたバックアップまたは失敗したバックアップはバックアップ履歴に表示されません。スキップされたバックアップを表示するには、gcloud
または API を使用します。
コンソール
-
Google Cloud コンソールで、Cloud SQL の [インスタンス] ページに移動します。
- インスタンスの [概要] ページを開くには、インスタンス名をクリックします。
- SQL ナビゲーション メニューから [バックアップ] を選択して、最近のバックアップ、および作成日時とバックアップの種類を表示します。
gcloud
- インスタンスのバックアップを一覧表示します。
gcloud sql backups list \ --instance INSTANCE_NAME
標準リスト パラメータを使用して、結果のフィルタリングや制御を行うことができます。完全なリストについては、gcloud sql backups list コマンドのリファレンス ページをご覧ください。
backups list
コマンドの出力からバックアップのID
を指定してバックアップの詳細を表示します。gcloud sql backups describe BACKUP_ID \ --instance INSTANCE_NAME
REST v1
BackupRuns:list ページの API Explorer を使用して REST API リクエストを送信することもできます。リクエストのデータを使用する前に、次のように置き換えます。
- project-id: プロジェクト ID
- instance-id: インスタンス ID
HTTP メソッドと URL:
GET https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id/backupRuns
リクエストを送信するには、次のいずれかのオプションを展開します。
次のような JSON レスポンスが返されます。
REST v1beta4
BackupRuns:list ページの API Explorer を使用して REST API リクエストを送信することもできます。リクエストのデータを使用する前に、次のように置き換えます。
- project-id: プロジェクト ID
- instance-id: インスタンス ID
HTTP メソッドと URL:
GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id/backupRuns
リクエストを送信するには、次のいずれかのオプションを展開します。
次のような JSON レスポンスが返されます。
停止時にバックアップのリストを表示する
インスタンスが停止しているリージョンにある場合、backupRuns.list
API でワイルドカード(-
)を使用すると、そのインスタンスのバックアップのみを表示できます。ワイルドカードを使用すると、プロジェクト内のすべてのバックアップが返されます。別のインスタンスへの復元をご覧ください。
インスタンスに対して顧客管理の暗号鍵(CMEK)が有効になっているリージョンでサービスが停止している場合、そのインスタンスのバックアップを別のリージョンに復元することはできません。これは、インスタンスで CMEK が有効になっている場合、Cloud SQL が暗号化にリージョンの Cloud KMS 鍵を使用するためです。CMEK インスタンスのバックアップを復元するには、Cloud SQL に CMEK 鍵へのアクセス権が必要です。リージョンが停止した場合、そのリージョンの Cloud KMS 鍵にはアクセスできません。
gcloud
- プロジェクト内のすべてのインスタンスのバックアップを一覧表示します。
gcloud sql backups list --instance -
コマンドから次のような情報が返されます。
{ "kind": "sql#backupRun", "status": "SUCCESSFUL", "enqueuedTime": "2020-01-21T11:25:33.818Z", "id": "backup-id", "startTime": "2020-01-21T11:25:33.858Z", "endTime": "2020-01-21T11:26:18.663Z", "type": "AUTOMATED", "windowStartTime": "2020-01-21T10:00:00.479Z", "instance": "instance-id", "selfLink": "https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id/backupRuns/backup-id", "location": "us" "backupKind": "SNAPSHOT" }
- 必要なインスタンスのバックアップを見つけます。このバックアップを復元するには、別のインスタンスへの復元をご覧ください。
REST v1
- プロジェクト内のすべてのバックアップを一覧表示します。
リクエストのデータを使用する前に、次のように置き換えます。
- PROJECT_ID: プロジェクト ID
- INSTANCE_ID: インスタンス ID。プロジェクト内のすべてのバックアップのリストの場合は
-
。
HTTP メソッドと URL:
GET https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/-/backupRuns
リクエストを送信するには、次のいずれかのオプションを展開します。
次のような JSON レスポンスが返されます。
- 必要なインスタンスのバックアップを見つけます。このバックアップを復元するには、別のインスタンスへの復元をご覧ください。
REST v1beta4
- プロジェクト内のすべてのバックアップを一覧表示します。
リクエストのデータを使用する前に、次のように置き換えます。
- project-id: プロジェクト ID
- instance-id: インスタンス ID。プロジェクト内のすべてのバックアップのリストの場合は
-
。
HTTP メソッドと URL:
GET https://sqladmin.googleapis.com/v1beta4/projects/project-id/instances/-/backupRuns
リクエストを送信するには、次のいずれかのオプションを展開します。
次のような JSON レスポンスが返されます。
- 必要なインスタンスのバックアップを見つけます。このバックアップを復元するには、別のインスタンスへの復元をご覧ください。
バックアップ ロケーションの表示
インスタンスに対して実行されたバックアップのロケーションを確認するには、次のように backupRuns
を使用します。
コンソール
-
Google Cloud コンソールで、Cloud SQL の [インスタンス] ページに移動します。
- インスタンスの [概要] ページを開くには、インスタンス名をクリックします。
- SQL ナビゲーション メニューから [バックアップ] を選択します。
- バックアップ リストの [ロケーション] 列には、各バックアップのロケーションのタイプ(マルチリージョンまたはリージョン)と特定のマルチリージョンまたはリージョンが表示されます。
gcloud
リファレンス情報については、gcloud sql instances describe をご覧ください。
- インスタンスのバックアップを一覧表示します。
gcloud sql backups list \ --instance INSTANCE_NAME
標準リスト パラメータを使用して、結果のフィルタリングや制御を行うことができます。完全なリストについては、gcloud sql backups list コマンドのリファレンス ページをご覧ください。
- 特定のバックアップの詳細を一覧表示するには、
backups list
コマンドの出力のID
を使用します。gcloud sql backups describe BACKUP_ID \ --instance INSTANCE_NAME
REST v1
リクエストのデータを使用する前に、次のように置き換えます。
- project-id: プロジェクト ID
- instance-id: インスタンス ID
HTTP メソッドと URL:
GET https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id/backupRuns
リクエストを送信するには、次のいずれかのオプションを展開します。
次のような JSON レスポンスが返されます。
前の例:REGION
は元のインスタンスのリージョンです。BACKUP_LOCATION
は Cloud SQL でバックアップを保存するロケーションです。
REST v1beta4
リクエストのデータを使用する前に、次のように置き換えます。
- project-id: プロジェクト ID
- instance-id: インスタンス ID
HTTP メソッドと URL:
GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id/backupRuns
リクエストを送信するには、次のいずれかのオプションを展開します。
次のような JSON レスポンスが返されます。
前の例:REGION
は元のインスタンスのリージョンです。BACKUP_LOCATION
は Cloud SQL でバックアップを保存するロケーションです。
バックアップ サイズを表示する
Cloud SQL インスタンスのバックアップのサイズは、gcloud CLI または API を使用して確認できます。
gcloud
Google Cloud プロジェクトに関連付けられているすべてのバックアップのリストを取得するには、
gcloud sql backups list
コマンドを使用します。gcloud sql backups list
バックアップのサイズを表示するには、
gcloud sql backups describe
コマンドを使用します。gcloud sql backups describe BACKUP_ID \ --instance=INSTANCE_NAME \ --project=PROJECT_ID
次のように置き換えます。
- BACKUP_ID: バックアップの ID。この ID は、
gcloud sql backups list
コマンドの実行結果から取得できます。 - INSTANCE_NAME: インスタンスの名前。
- PROJECT_ID: インスタンスが含まれている Google Cloud プロジェクトの ID またはプロジェクト番号。
出力で、
maxChargeableBytes
パラメータにバックアップのサイズ(バイト単位)が表示されます。- BACKUP_ID: バックアップの ID。この ID は、
REST
バックアップのリストを取得する
この例では、 Google Cloud プロジェクトに関連付けられているすべてのバックアップのリストを取得します。この呼び出しのパラメータの完全なリストについては、backupRuns.list ページをご覧ください。
リクエストのデータを使用する前に、次のように置き換えます。
- PROJECT_ID: インスタンスが含まれている Google Cloud プロジェクトの ID またはプロジェクト番号
- INSTANCE_NAME: インスタンスの名前
HTTP メソッドと URL:
GET https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_NAME/backupRuns
リクエストを送信するには、次のいずれかのオプションを展開します。
次のような JSON レスポンスが返されます。
バックアップの詳細を表示する
この例では、バックアップのサイズなど、バックアップの詳細を表示します。この呼び出しのパラメータの完全なリストについては、backupRuns.get ページをご覧ください。
リクエストのデータを使用する前に、次のように置き換えます。
- PROJECT_ID: インスタンスが含まれている Google Cloud プロジェクトの ID またはプロジェクト番号。
- INSTANCE_NAME: インスタンスの名前。
- BACKUP_ID: バックアップ ID。この ID は、前の呼び出しの実行の出力から取得します。
HTTP メソッドと URL:
GET https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_NAME/backupRuns/BACKUP_ID
リクエストを送信するには、次のいずれかのオプションを展開します。
次のような JSON レスポンスが返されます。
最終バックアップを構成する
最終バックアップ インスタンスの設定を有効にして最終バックアップの保持期間を設定すると、インスタンスでバックアップを自動的に取得するように設定できます。削除前にインスタンスの最終バックアップを有効にしていない場合は、インスタンスを削除するときに最終バックアップを作成することもできます。最終バックアップの仕組みの詳細については、最終バックアップをご覧ください。
インスタンスの削除後に最終バックアップを管理するには、削除されたインスタンスのバックアップを管理するをご覧ください。
最終バックアップを有効にする
インスタンスの最終バックアップを有効にするには、次の操作を行います。
コンソール
Google Cloud コンソールで、Cloud SQL の [インスタンス] ページに移動します。
最終バックアップを有効にするインスタンスを見つけます。インスタンスの [概要] ページを開くには、インスタンス名をクリックします。
[編集] をクリックします。
[インスタンスのカスタマイズ] で、[データ保護] を開きます。
最終バックアップを有効にするには、[インスタンス削除保護] の [インスタンス削除時の最終バックアップ] のチェックボックスをオンにします。
デフォルトの保持期間は 30 日です。これを変更するには、[保持日数] ボックスに 1 ~ 365 の数値を入力します。
[保存] をクリックします。
gcloud
gcloud sql instances
コマンドを使用して、最終バックアップを有効にします。
gcloud sql instances patch INSTANCE_NAME \
--final-backup \
--final-backup-retention-days=RETENTION_DAYS
次のように置き換えます。
INSTANCE_NAME
: Cloud SQL インスタンスの名前。RETENTION_DAYS
: 最終バックアップを保持する日数。1 ~ 365 日の範囲で指定できます。デフォルトは 30 日です。
REST v1
最終バックアップを有効にするには、次の操作を行います。
リクエストのデータを使用する前に、次のように置き換えます。
- PROJECT_ID: プロジェクト ID
- INSTANCE_ID: インスタンス ID
- RETENTION_DAYS: 最終バックアップを保持する日数
HTTP メソッドと URL:
PATCH https://sqladmin.googleapis.com/sql/v1/projects/PROJECT_ID/instances/INSTANCE_ID
リクエストの本文(JSON):
{ "settings": { "FinalBackupConfig": { "enabled": true, "retentionDays: RETENTION_DAYS } } }
リクエストを送信するには、次のいずれかのオプションを展開します。
次のような JSON レスポンスが返されます。
{ "kind": "sql#operation", "targetLink": "https://sqladmin.googleapis.com/sql/v1/projects/PROJECT_ID/instances/INSTANCE_ID", "status": "PENDING", "user": "user@example.com", "insertTime": "2020-01-16T02:32:12.281Z", "operationType": "UPDATE", "name": "OPERATION_ID", "targetId": "INSTANCE_ID", "selfLink": "https://sqladmin.googleapis.com/sql/v1/projects/PROJECT_ID/operations/OPERATION_ID", "targetProject": "PROJECT_ID" }
REST v1beta
最終バックアップを有効にするには、次の操作を行います。
リクエストのデータを使用する前に、次のように置き換えます。
- PROJECT_ID: プロジェクト ID
- INSTANCE_ID: インスタンス ID
- RETENTION_DAYS: 最終バックアップを保持する日数
HTTP メソッドと URL:
PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID
リクエストの本文(JSON):
{ "settings": { "FinalBackupConfig": { "enabled": true, "retentionDays: RETENTION_DAYS } } }
リクエストを送信するには、次のいずれかのオプションを展開します。
次のような JSON レスポンスが返されます。
{ "kind": "sql#operation", "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID", "status": "PENDING", "user": "user@example.com", "insertTime": "2020-01-16T02:32:12.281Z", "operationType": "UPDATE", "name": "OPERATION_ID", "targetId": "INSTANCE_ID", "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/operations/OPERATION_ID", "targetProject": "PROJECT_ID" }
最終バックアップの保持期間を設定する
インスタンスの最終バックアップの保持期間を設定する手順は次のとおりです。
コンソール
Google Cloud コンソールで、Cloud SQL の [インスタンス] ページに移動します。
最終バックアップを有効にするインスタンスを見つけます。インスタンスの [概要] ページを開くには、インスタンス名をクリックします。
[編集] をクリックします。
[インスタンスのカスタマイズ] で、[データ保護] を開きます。
最終バックアップの保持期間を変更するには、[インスタンス削除後の最終バックアップ] 設定の [保持日数] ボックスに 1 ~ 365 の数値を入力します。
デフォルトの保持期間は 30 日です。
[保存] をクリックします。
gcloud
gcloud sql instances
コマンドを使用して、最終バックアップの保持日数の設定を更新します。
gcloud sql instances patch INSTANCE_NAME \
--final-backup-retention-days=RETENTION_DAYS
次のように置き換えます。
INSTANCE_NAME
: Cloud SQL インスタンスの名前。RETENTION_DAYS
: 最終バックアップを保持する日数。1 ~ 365 日の範囲で指定できます。デフォルトは 30 日です。
REST v1
最終バックアップの保持日数の設定を更新する手順は次のとおりです。
リクエストのデータを使用する前に、次のように置き換えます。
- PROJECT_ID: プロジェクト ID
- INSTANCE_ID: インスタンス ID
- RETENTION_DAYS: 最終バックアップを保持する日数
HTTP メソッドと URL:
PATCH https://sqladmin.googleapis.com/sql/v1/projects/PROJECT_ID/instances/INSTANCE_ID
リクエストの本文(JSON):
{ "settings": { "FinalBackupConfig": { "retentionDays: RETENTION_DAYS } } }
リクエストを送信するには、次のいずれかのオプションを展開します。
次のような JSON レスポンスが返されます。
{ "kind": "sql#operation", "targetLink": "https://sqladmin.googleapis.com/sql/v1/projects/PROJECT_ID/instances/INSTANCE_ID", "status": "PENDING", "user": "user@example.com", "insertTime": "2020-01-16T02:32:12.281Z", "operationType": "UPDATE", "name": "OPERATION_ID", "targetId": "INSTANCE_ID", "selfLink": "https://sqladmin.googleapis.com/sql/v1/projects/PROJECT_ID/operations/OPERATION_ID", "targetProject": "PROJECT_ID" }
REST v1beta
最終バックアップの保持日数の設定を更新する手順は次のとおりです。
リクエストのデータを使用する前に、次のように置き換えます。
- PROJECT_ID: プロジェクト ID
- INSTANCE_ID: インスタンス ID
- RETENTION_DAYS: 最終バックアップを保持する日数
HTTP メソッドと URL:
PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID
リクエストの本文(JSON):
{ "settings": { "FinalBackupConfig": { "retentionDays: RETENTION_DAYS } } }
リクエストを送信するには、次のいずれかのオプションを展開します。
次のような JSON レスポンスが返されます。
{ "kind": "sql#operation", "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID", "status": "PENDING", "user": "user@example.com", "insertTime": "2020-01-16T02:32:12.281Z", "operationType": "UPDATE", "name": "OPERATION_ID", "targetId": "INSTANCE_ID", "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/operations/OPERATION_ID", "targetProject": "PROJECT_ID" }
最終バックアップを無効にする
インスタンスの最終バックアップを無効にするには、次の操作を行います。
コンソール
Google Cloud コンソールで、Cloud SQL の [インスタンス] ページに移動します。
最終バックアップを有効にするインスタンスを見つけます。インスタンスの [概要] ページを開くには、インスタンス名をクリックします。
[編集] をクリックします。
[インスタンスのカスタマイズ] で、[データ保護] を開きます。
最終バックアップを無効にするには、[インスタンス削除保護] の [インスタンス削除時の最終バックアップ] のチェックボックスをオフにします。
[保存] をクリックします。
gcloud
gcloud sql instances
コマンドを使用して、最終バックアップを無効にします。
gcloud sql instances patch INSTANCE_NAME \
--no-final-backup
次のように置き換えます。
INSTANCE_NAME
: Cloud SQL インスタンスの名前。
REST v1
最終バックアップを無効にするには、次の操作を行います。
リクエストのデータを使用する前に、次のように置き換えます。
- PROJECT_ID: プロジェクト ID
- INSTANCE_ID: インスタンス ID
HTTP メソッドと URL:
PATCH https://sqladmin.googleapis.com/sql/v1/projects/PROJECT_ID/instances/INSTANCE_ID
リクエストの本文(JSON):
{ "settings": { "FinalBackupConfig": { "enabled": false } } }
リクエストを送信するには、次のいずれかのオプションを展開します。
次のような JSON レスポンスが返されます。
{ "kind": "sql#operation", "targetLink": "https://sqladmin.googleapis.com/sql/v1/projects/PROJECT_ID/instances/INSTANCE_ID", "status": "PENDING", "user": "user@example.com", "insertTime": "2020-01-16T02:32:12.281Z", "operationType": "UPDATE", "name": "OPERATION_ID", "targetId": "INSTANCE_ID", "selfLink": "https://sqladmin.googleapis.com/sql/v1/projects/PROJECT_ID/operations/OPERATION_ID", "targetProject": "PROJECT_ID" }
REST v1beta
最終バックアップを無効にするには、次の操作を行います。
リクエストのデータを使用する前に、次のように置き換えます。
- PROJECT_ID: プロジェクト ID
- INSTANCE_ID: インスタンス ID
HTTP メソッドと URL:
PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID
リクエストの本文(JSON):
{ "settings": { "FinalBackupConfig": { "enabled": false } }s }
リクエストを送信するには、次のいずれかのオプションを展開します。
次のような JSON レスポンスが返されます。
{ "kind": "sql#operation", "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID", "status": "PENDING", "user": "user@example.com", "insertTime": "2020-01-16T02:32:12.281Z", "operationType": "UPDATE", "name": "OPERATION_ID", "targetId": "INSTANCE_ID", "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/operations/OPERATION_ID", "targetProject": "PROJECT_ID" }
保持されたバックアップを構成する
インスタンスを削除するときに、すべての自動バックアップとオンデマンド バックアップを自動的に保持するようにインスタンスを設定できます。これらのバックアップは、削除時のバックアップの保持期間に基づいて保持されます。最終バックアップの仕組みの詳細については、最終バックアップをご覧ください。
インスタンスの削除後に保持されたバックアップを管理するには、削除されたインスタンスのバックアップを管理するをご覧ください。
保持されているバックアップを有効にする
インスタンスの保持バックアップを有効にするには、次の操作を行います。
コンソール
Google Cloud コンソールで、Cloud SQL の [インスタンス] ページに移動します。
保持されているバックアップを有効にするインスタンスを見つけます。インスタンスの [概要] ページを開くには、インスタンス名をクリックします。
[編集] をクリックします。
[インスタンスのカスタマイズ] で、[データ保護] を開きます。
保持バックアップを有効にするには、[インスタンスの削除保護] で [インスタンスの削除後もバックアップを保持する] チェックボックスをオンにします。
[保存] をクリックします。
gcloud
gcloud sql instances
コマンドを使用して、保持されたバックアップを有効にします。
gcloud sql instances patch INSTANCE_NAME \
--retain-backups-on-delete
次のように置き換えます。
INSTANCE_NAME
: Cloud SQL インスタンスの名前。
REST v1
保持されたバックアップを有効にするには、次の操作を行います。
リクエストのデータを使用する前に、次のように置き換えます。
- PROJECT_ID: プロジェクト ID
- INSTANCE_ID: インスタンス ID
HTTP メソッドと URL:
PATCH https://sqladmin.googleapis.com/sql/v1/projects/PROJECT_ID/instances/INSTANCE_ID
リクエストの本文(JSON):
{ "settings": { "retainBackupsOnDelete": true } }
リクエストを送信するには、次のいずれかのオプションを展開します。
次のような JSON レスポンスが返されます。
{ "kind": "sql#operation", "targetLink": "https://sqladmin.googleapis.com/sql/v1/projects/PROJECT_ID/instances/INSTANCE_ID", "status": "PENDING", "user": "user@example.com", "insertTime": "2020-01-16T02:32:12.281Z", "operationType": "UPDATE", "name": "OPERATION_ID", "targetId": "INSTANCE_ID", "selfLink": "https://sqladmin.googleapis.com/sql/v1/projects/PROJECT_ID/operations/OPERATION_ID", "targetProject": "PROJECT_ID" }
REST v1beta
保持されたバックアップを有効にするには、次の操作を行います。
リクエストのデータを使用する前に、次のように置き換えます。
- PROJECT_ID: プロジェクト ID
- INSTANCE_ID: インスタンス ID
HTTP メソッドと URL:
PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID
リクエストの本文(JSON):
{ "settings": { "retainBackupsOnDelete": true } }
リクエストを送信するには、次のいずれかのオプションを展開します。
次のような JSON レスポンスが返されます。
{ "kind": "sql#operation", "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID", "status": "PENDING", "user": "user@example.com", "insertTime": "2020-01-16T02:32:12.281Z", "operationType": "UPDATE", "name": "OPERATION_ID", "targetId": "INSTANCE_ID", "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/operations/OPERATION_ID", "targetProject": "PROJECT_ID" }
保持されているバックアップを無効にする
インスタンスの保持されているバックアップを無効にするには、次の操作を行います。
コンソール
Google Cloud コンソールで、Cloud SQL の [インスタンス] ページに移動します。
保持されているバックアップを有効にするインスタンスを見つけます。インスタンスの [概要] ページを開くには、インスタンス名をクリックします。
[編集] をクリックします。
[インスタンスのカスタマイズ] で、[データ保護] を開きます。
保持バックアップを無効にするには、[インスタンスの削除保護] で [インスタンスの削除後もバックアップを保持する] のチェックボックスをオフにします。
[保存] をクリックします。
gcloud
gcloud sql instances
コマンドを使用して、保持されているバックアップを無効にします。
gcloud sql instances patch INSTANCE_NAME \
--no-retain-backups-on-delete
次のように置き換えます。
INSTANCE_NAME
: Cloud SQL インスタンスの名前。
REST v1
保持されたバックアップを無効にするには、次の操作を行います。
リクエストのデータを使用する前に、次のように置き換えます。
- PROJECT_ID: プロジェクト ID
- INSTANCE_ID: インスタンス ID
HTTP メソッドと URL:
PATCH https://sqladmin.googleapis.com/sql/v1/projects/PROJECT_ID/instances/INSTANCE_ID
リクエストの本文(JSON):
{ "settings": { "retainBackupsOnDelete": false } }
リクエストを送信するには、次のいずれかのオプションを展開します。
次のような JSON レスポンスが返されます。
{ "kind": "sql#operation", "targetLink": "https://sqladmin.googleapis.com/sql/v1/projects/PROJECT_ID/instances/INSTANCE_ID", "status": "PENDING", "user": "user@example.com", "insertTime": "2020-01-16T02:32:12.281Z", "operationType": "UPDATE", "name": "OPERATION_ID", "targetId": "INSTANCE_ID", "selfLink": "https://sqladmin.googleapis.com/sql/v1/projects/PROJECT_ID/operations/OPERATION_ID", "targetProject": "PROJECT_ID" }
REST v1beta
保持されたバックアップを無効にするには、次の操作を行います。
リクエストのデータを使用する前に、次のように置き換えます。
- PROJECT_ID: プロジェクト ID
- INSTANCE_ID: インスタンス ID
HTTP メソッドと URL:
PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID
リクエストの本文(JSON):
{ "settings": { "retainBackupsOnDelete": true } }
リクエストを送信するには、次のいずれかのオプションを展開します。
次のような JSON レスポンスが返されます。
{ "kind": "sql#operation", "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID", "status": "PENDING", "user": "user@example.com", "insertTime": "2020-01-16T02:32:12.281Z", "operationType": "UPDATE", "name": "OPERATION_ID", "targetId": "INSTANCE_ID", "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/operations/OPERATION_ID", "targetProject": "PROJECT_ID" }
次のステップ
- データのバックアップの詳細について学ぶ。
- データの復元の詳細について学ぶ。
- ポイントインタイム リカバリの詳細を学ぶ。
- バックアップからデータを復元する方法を確認する。
- ポイントインタイム リカバリを実行する方法を確認する。