Azure Database for MySQL フレキシブルサーバーのバックアップリストア手順
Azure Database for MySQL フレキシブルサーバー(Azure Database for MySQL flexible server)のバックアップ、リストア(復元)の概要から作業手順について纏めてみました。
-
- 主な内容
- バックアップリストア方法の種類、出来ない事、バックアップ容量の確認方法
- オンデマンドバックアップ手順
- 復元ポイントの整理、リストア手順
- 主な内容
Azure Database for MySQL フレキシブルサーバーのバックアップ、リストアについて
バックアップは2種類
バックアップは自動バックアップとオンデマンドバックアップの2種類になります。
共にスナップショットベースでの取得になります。
Backup の概要(Azure Database for MySQL フレキシブル サーバーでのバックアップと復元)
-
- 自動バックアップ
- Azureプラットフォーム側で自動的に1日1度取得される
- バックアップ保管期間は1日~35日で選択(デフォルトは7日間)
- バックアップ時間は選択できない
- オンデマンドバックアップ
- ユーザー自身が実行して取得
- バックアップ保管期間は自動バックアップと同じ期間(1日~35日)
- バックアップ時間は任意
- 最大50個まで取得可能
- 自動バックアップ
トランザクションログのバックアップは5分間隔でプラットフォーム側で自動バックアップとして実施されます。
初回バックアップはサーバー作成直後に自動的に取得される
サーバー作成直後に自動バックアップが実行されます。
リストア直後にも自動バックアップが実行されます。
リストア方法は大きく分けて2種類
リストア方法はトランザクションログを適用するかしないかによって分かれます。
-
- 最速の復元ポイント
- 1日1度取得される完全バックアップを利用してリストア
- 最新の復元ポイント (カスタム復元ポイントも含む)
- 最新の復元はトランザクションログをすべて適用して一番近い時間までにリストア
- カスタム復元ポイントは指定した日時までトランザクションログを適用してリストア
- 最速の復元ポイント
リストアは同じサーバー名で実施出来ない
リストアは同じサーバーにデータを戻す形ではありません。
バックアップデータをもとに新規Azure Database for MySQL フレキシブルサーバーのリソースを作成します。
新規サーバーをデプロイする形になる為、同じサーバー名でのリストアは出来ません。
リストア時に変更できないものや引き継がれない設定がある
リストア時にはンピューティングとストレージで設定される内容(Geo冗長バックアップ設定を除く)については変更できません。
管理者アカウントも引き継がれリストア時には変更できません。
ネットワークやセキュリティ設定変更出来ます。
一部のサーバーパラメータ(time_zone、event_schedule)はリストア時にデフォルト値に戻ります。
HA構成は無効化されてリストアされます。
リストアは同じリージョンかペアリングされたリージョンにしか出来ない
バックアップをローカル冗長、Geo冗長どちらを設定した場合でも、同じリージョン(ローカル冗長、Geo冗長)かペアリングされたリージョン(Geo冗長)にしかできません。
別のリージョンへリストアはサポートされていません。
サーバー停止時のバックアップリストア
サーバ停止時はバックアップが取得されません。
サーバ停止時はAzure CLIを使ってリストアします。
Azure CLI を使用した Azure Database for MySQL フレキシブル サーバーのポイントインタイム リストア
※今回Azure CLIを使ったリストアは実施していません。機会があれば追記したいと思います。
RTO
RTOは適用するログ量やデータベースの量により異なる為規定されていません。
HA構成を組んでおくとフェイルオーバー可能な場合は60秒から120秒になります。
復元(Azure Database for MySQL フレキシブル サーバーでのバックアップと復元)
RPO
RPOはローカル冗長の場合は0分、Geo冗長の場合は60分になります。
※5分以内にリストアする場合ですが、5分間待つとトランザクションログのバックアップが取得される為直前までリストアが可能になります。
バックアップ使用量の確認
バックアップ使用量はメトリックのBackup Storage Usedで確認出来ます。
バックアップ使用量 | |
メトリックでBackup Storage Usedを選択します。 バックアップ使用量の遷移が確認出来ます。 |
Azure Database for MySQLフレキシブル サーバーをオンデマンドバックアップ
公式サイトを参考にオンデマンドバックアップしてみます。
Azure portal を使用して Azure Database for MySQL フレキシブル サーバーのオンデマンド バックアップをトリガーする
設定内容はバックアップ名だけです。
保管期間は自動バックアップのバックアップ保有期間と同じになります。
オンデマンドバックアップ | |
バックアップと復元で今すぐバックアップを選択します。 バックアップ名を設定してトリガーを選択します。 オンデマンドバックアップが開始されます。 |
|
バックアップ取得が完了するとバックアップ一覧に表示されます。 種類にオンデマンドバックアップと表示されます。 |
Azure Database for MySQLフレキシブル サーバーをリストア
公式サイトを参考にリストアしてみます。
今回は最新の復元ポイントへリストアします。
Azure portal を使用した Azure Database for MySQL フレキシブル サーバーのポイントインタイム リストア
バックアップ元サーバー
バックアップ元は事前に作成したサーバーを利用します。
リストア開始
リストア作業の実行は概要とバックアップ復元のリソースメニューから可能です。
リストア開始 | |
概要にある復元ボタンを選択するとリストア作業を開始出来ます。 | |
バックアップと復元で表示されている復元を選択するとリストア作業を開始出来ます。 |
復元ポイントの選択
復元ポイントは最新の復元ポイント、カスタム復元ポイント、最速の復元ポイントの3つから選択します。
※公式サイトに記載がありますがgeo冗長を使ったリストアの場合プライマリリージョンが復旧している必要があります。プライマリリージョンの状態に関わらずリストアする場合はサーバーの構成でGeo冗長バックアップ設定を無効にする必要があります。
サーバーの詳細や構成
サーバー名、可用性ゾーンを選択します。
サーバーの構成の設定はGeo冗長設定以外は変更できません。
サーバーの構成 | |
サーバーの詳細で名前や可用性ゾーンを設定します。 場所(リージョン)やMySQLのバージョンは変更できません。 |
|
サーバーの構成の内容はGeo冗長バックアップ設定以外変更できません。 | |
復元ポイントや名前を設定します。 ※サーバー名は同じ名前を指定する事は出来ません。今回はrestore-test-mysql-flexible-serverとしています。 |
リストア実行
リストアを実行します。
リストアの開始 | |
設定内容を確認し問題が無ければ作成を選択します。 |
ネットワーク設定やセキュリティ設定は変更可能
ネットワーク設定やセキュリティ設定は変更可能です。
ネットワーク設定 | |
ネットワーク設定やセキュリティ設定は変更可能です。 ※ファイアウォール規則の設定は引き継がれます。ソースサーバーで現在のクライアントIPアドレスを追加した規則を作成している為グレーアウトしています。 |
サーバーリストア(作成)後の確認
作成されたAzure Database for MySQLフレキシブル サーバーのリソースを確認します。
最後に
Azure Database for MySQLフレキシブル サーバーのバックアップリストアについて概要から実際の手順まで纏めてみました。
リストアと言うと同じサーバーに戻すイメージですが、バックアップデータを元に別のサーバー名でリソースを新規作成する形になる事が確認出来ました。
HA構成などリストア後に必要な設定もあり、リストア時に出来ない事やリストア後に必要な作業内容は把握しておく必要があると思いました。
Azure Database for MySQLフレキシブル サーバーのバックアップリストアについてはこちらに纏めています。
併せて見て頂けると有難いです。