Cloud SQLのバックアップと復元方法
Cloud SQL のバックアップと復元方法について調べてみました。
バックアップの概要
バックアップの種類
公式ドキュメント「Cloud SQL バックアップについて」によると、2つのバックアップの種類があります。
- オンデマンド バックアップ
- 自動バックアップ
この2つの違いは、バックアップの保持期間です。
オンデマンド バックアップは手動でバックアップを削除する、もしくはインスタンスが削除されるまで維持されます。
自動バックアップは保持期間(最大365日)を過ぎると削除されます。
費用
バックアップデータの料金は、インスタンスの料金とは別にかかります。
DBの種類と保存するリージョンによって料金は異なり、GB単位で課金されます。
今回使った MySQL の料金一覧はこちらです。
「ストレージとネットワークの料金」にバックアップ料金が記載されています。
エクスポート
バックアップデータはエクスポートできないようです。
Cloud Storage など Cloud SQL 以外にデータを保存したい場合や Cloud SQL のインスタンスは削除するがデータは残しておきたい場合は、別途データのエクスポートを行う必要があります。
自動バックアップの設定
以降の手順は、Cloud SQL MySQL 8.0 を使用しています。
自動バックアップは、インスタンス作成時、作成後どちらでも設定できます。
インスタンス作成時
「インスタンスのカスタマイズ」の「構成オプションを表示」をクリックすると、バックアップの項目が表示されます。
可用性を複数のゾーンにすると、バックアップの自動化とポイントインタイムリカバリの有効は必須になります。
バックアップの自動化の詳細オプションでは、バックアップの時間枠とバックアップを保存するリージョン、バックアップ数が設定できます。
バックアップの保存先をマルチリージョンにした場合、us, eu, asia の三か所から選びます。
ポイントインタイムリカバリの詳細オプションでは、バックアップと同時に保存するトランザクションログを保存する日数を設定できます。
トランザクションログが削除されるタイミングによっては、保持されるログの数が設定値より少なくなるため、
ドキュメントでは保持したい日数+1以上を設定することを推奨しています。
インスタンス作成後
インスタンスの名前から概要ページを開き、左のメニューから「バックアップ」を開きます。
ページ上部に自動バックアップの設定、下部にバックアップ一覧が表示されます。
自動バックアップの設定項目は作成時と同じのため、詳細は割愛します。
オンデマンド バックアップの作成
「バックアップ」ページの「バックアップを作成する」をクリックすると、オンデマンドバックアップの作成ペインが開きます。
設定項目はバックアップの説明と保存先のリージョンの選択のみです。
バックアップが作成されると、バックアップ一覧に追加されます。
種類より、オンデマンドバックアップか自動バックアップかを確認できます。
復元
バックアップ一覧から、復元したいバックアップアイテムの「復元」をクリックすると、復元ペインが開きます。
復元先はバックアップを取得したインスタンスに限らず、互換性のあるインスタンスであれば復元可能です。
以上です。
誰かの役に立てば幸いです。