📝

RDSのスナップショットからの復元をやってみた

2021/06/02に公開

RDSではデータベースのバックアップとしてスナップショットを取得することができ、取得したスナップショットからデータベースを復元することができます。今回は公式のチュートリアルを参考にして、スナップショットからの復元の手順を紹介していきます。

まずはドキュメントから

復元時にはいくつか注意事項があるので、しっかりとドキュメントを読みましょう。
DB のスナップショットからの復元 - Amazon Relational Database Service

簡単にまとめてみます。

  • バックアップはデータベース単位ではなくインスタンス単位です。
  • 復元先は既存のインスタンスではなく、新しいインスタンスになります。
  • 復元元のストレージと復元先のストレージで、ストレージタイプを変えることができます。
  • 暗号化したうえで別のアカウントと共有されているスナップショットからは復元できないので、スナップショットのコピーから復元します。
  • 復元元のDBに紐づいているパラメータグループは保持しておきましょう。
  • 何も指定しないと復元されたインスタンスにはデフォルトのセキュリティグループがアタッチされます。復元時に変更可能です。
  • 別のVPCに復元するときはオプショングループの設定変更が必要な場合があります。
  • Microsoft SQL Serverではエディションを変更する場合に制限があります。
  • Oracle GoldenGate を使用している場合、必ず compatible パラメータと同時にパラメータグループを保持します。

復元手順

それでは以下の公式のチュートリアルを参考に復元を行っていきます。
チュートリアル: DB スナップショットからの DB インスタンスの復元 - Amazon Relational Database Service

まずはマネジメントコンソールからRDSコンソールに移動しましょう。

「スナップショット」をクリックします。

復元するスナップショットを選択します。
今回は自動で取得されたスナップショットからの復元なので、上部のタブで「システム」を選択しました。手動の場合などはタブを切り替えてください。

「アクション」から「スナップショット」を復元をクリックします。

スナップショットの復元ページが表示されます。インスタンス作成時と同じような画面なので、各種設定を行いましょう。

「DBインスタンス識別子」はdb-from-snapshotとしました。

VPC、サブネットグループ、セキュリティグループは復元元と同じものを使用するよう設定しました。パブリックアクセスも「あり」に変更しました。VPCとサブネットグループはデフォルトで復元元と同じものが設定されていましたが、ドキュメントに記載があった通り、セキュリティグループはdefaultのセキュリティグループになっていたため変更しました。

インスタンスサイズとストレージも復元元と同じ設定にしました。

以降の設定はデフォルトのままとして、画面最下部の「DBインスタンスの復元」をクリックします。

db-from-snapshotのインスタンスが作成中になりました。

5分ほど待つと利用可能になりました。

イベントにもスナップショットからの復元された記録が残っていました。

以上でスナップショットからの復元手順は完了です!

まとめ

今回はRDSのバックアップであるスナップショットからインスタンスを復元するという手順を、チュートリアルを参考にやってみました。インスタンスを作成したことがある方は、作成時と同じような設定なので簡単にできたのではないでしょうか?
スナップショットからの復元は災害時の対応はもちろん、チュートリアルの冒頭ではコスト削減にも役立つという説明もありますので、システムの信頼性やコストパフォーマンスを考慮して上手に使っていきましょう!

今回はここまで!お疲れさまでした!

Discussion