Azure Database for MySQL フレキシブル サーバーのバックアップリストア手順

Azure,Database For MySQL

Azure Database for MySQL フレキシブル サーバーのバックアップとリストア(復元)の概要と作業手順です。
リストアはバックアップデータを使用し、新しくリソースを作成する形になります。

    • 主な確認内容
      • バックアップとリストアの概要や種類
      • バックアップストレージ使用量の確認方法
      • オンデマンド バックアップ手順
      • 復元ポイントの確認方法
      • リストア手順

※本記事内では、Azure Database for MySQL Flexible ServerをAzure Database for MySQL フレキシブル サーバーとして表記しています。

スポンサーリンク

Azure Database for MySQL フレキシブルサーバーのバックアップ、リストアについて

自動バックアップとオンデマンド バックアップの2種類

バックアップには、自動バックアップとオンデマンド バックアップの2種類があります。
どちらもスナップショットベースで取得されます。

Azure Database for MySQL – フレキシブル サーバーでのバックアップと復元

    • 自動バックアップ
      • Azureプラットフォーム側で自動的に1日1度取得
      • バックアップ保管期間は1日~35日で選択(デフォルトは7日間)
      • バックアップ時間は指定できない
    • オンデマンド バックアップ
      • ユーザー自身が実行して取得
      • バックアップ保管期間は自動バックアップと同じ期間(1日~35日)
      • バックアップ時間は任意
      • 最大50個まで取得可能

トランザクションログのバックアップは、プラットフォーム側で5分間隔で自動的に実施されます。

ローカル冗長、ゾーン冗長、geo冗長から選択

バックアップは、ローカル冗長、ゾーン冗長、geo冗長から選択できます。
可用性ゾーンがまだサポートされていないリージョンでは、ゾーン冗長は選択できません。

バックアップ冗長オプション

サーバー作成後にゾーン冗長やgeo冗長に変更することはできません。
geo冗長を利用した場合、バックアップストレージのコストは 2 倍になります。

初回バックアップはリソース作成直後に自動的に取得

サーバーのリソース作成直後に、自動バックアップが実行されます。
サーバーをリストアした場合も、同様に初回バックアップが自動的に取得されます。

リストア方法は大きく分けて2種類

ポイントインタイム リストアとgeo 復元の2種類です。
geo復元はgeo冗長ストレージとしてサーバーを構成した場合にのみ利用できます。

復元

ポイントタイムリストアには3つのパターンがあります。
最速の復元ポイントを選択した場合、リストアにかかる時間は最短になりますが、トランザクションログは適用されません。
最新の復元ポイントの場合には、最新の状態に戻すか特定の日時に戻すかを指定できます。

ポイントインタイム リストア

    • 最速の復元ポイント
      • 1日に1回取得される完全バックアップを利用してリストアします
    • 最新の復元ポイント 
      • 最新の復元は、トランザクションログをすべて適用して、可能な限り現在の時点に近い状態までリストアします
      • カスタム復元ポイントは、指定した日時までトランザクションログを適用してリストアします

ローカル冗長の場合は別リージョンへリストアできない

バックアップでローカル冗長を選択している場合は、別リージョンへのリストアはできません。

geo冗長の場合は別リージョンへリストアできる

geo冗長を設定している場合は、ペアリングされたリージョンにリストアできます。
Azure Database for MySQL フレキシブル サーバーを利用できる他のリージョンに、サーバーをリストアできます 。

geo リストア

同じサーバー名ではリストアできない

バックアップデータを利用して、新たに Azure Database for MySQL フレキシブル サーバーのリソースを作成します。
新規サーバーをデプロイする形になるため、同じサーバー名でのリストアはできません。

リストア時に変更できないまたは引き継がれない設定がある

リストア時には、コンピューティングとストレージで設定される内容(Geo冗長バックアップ設定を除く)については変更できません。
管理者アカウントも引き継がれ、リストア時には変更できません。
ネットワークやセキュリティ設定は変更できます。

ポイントインタイム リストア

リストア時に一部のサーバーパラメータ(time_zone、event_scheduler)は、デフォルト値に戻ります。
HA構成は無効化されます。

サーバー停止時はバックアップが取得されない

サーバー停止時にはバックアップが取得されません。

復旧時間(RTO)

RTOは、適用するログ量やデータベースの量によって異なるため、規定されていません。

Azure Database for MySQL – フレキシブル サーバーでのビジネス継続性の概要

目標復旧時点(RPO)

コミットされたトランザクションではデータ損失が発生しないことが想定されています。
そのため、ローカル冗長の場合のRPOは0秒になります。

計画外のダウンタイム: 障害シナリオとサービス復旧

Geoリストアの場合、60分になります。

バックアップストレージ使用量の確認方法

バックアップストレージの使用量は、メトリックの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 フレキシブル サーバーのポイントインタイム リストア

事前に準備したAzure Database for MySQL フレキシブル サーバーを利用しています。

リストアを開始

リストアは概要やバックアップ復元メニューから開始できます。

リストアを開始
概要やバックアップと復元のメニューで表示されている復元を選択すると、リストア作業を開始できます。

復元ポイントの選択

復元ポイントは、最新の復元ポイント、カスタム復元ポイント、最速の復元ポイントの3つから選択します。

ポイントインタイム リストア

復元ポイントの選択

ソースの詳細でリストア方法やポイントを選択します。
Geo冗長からの復旧や復元ポイントを選択します。

最新の復元ポイントは、最も現在に近い時間に復旧する方法です。
すべてのトランザクションログを適用してリストアを実行します。

カスタム復元ポイントは、任意の時間に復旧する方法です。
特定の日時に戻したい場合に利用します。
カスタム復元ポイントの日時までのトランザクションログを適用してリストアを実行します。
最速の復元ポイントは、完全バックアップを利用して最短時間でリストアを実行します。
自動バックアップやオンデマンドバックアップの取得データから復元ポイントを選択します。
Geo冗長を選択した場合、復元ポイントは選択できません。
最新の復元ポイントにリストアされます。

※geo冗長を使ったリストアの場合、プライマリリージョンが復旧している必要があります。プライマリリージョンの状態に関わらずリストアする場合は、サーバーの構成でgeo冗長構成を無効にする必要があります。

geo リストア

リストアするサーバーの詳細や構成を設定

サーバー名、可用性ゾーンを選択します。
サーバーの構成の設定は、バックアップのgeo冗長性以外変更できません。

サーバーの構成
サーバーの詳細で、名前や可用性ゾーンを設定します。
場所(リージョン)やMySQLのバージョンは変更できません。

サーバーの構成内容は、Geo冗長バックアップ設定以外は変更できません。

ポイントタイム リストアを選択します。
復元ポイント、サーバー名、可用性ゾーンを設定します。
バックアップと同じサーバー名は設定できません。
今回は、restore-test-mysql-flexible-serverとしています。

Azure Database for MySQL フレキシブル サーバーのリストアを開始

Azure Database for MySQL フレキシブル サーバーのリストアは、リソースの新規作成になります。

リストアを開始
設定内容を確認し、問題がなければ作成を選択します。

リストア時にネットワーク設定やセキュリティ設定を変更できる

リストア時にネットワーク設定やセキュリティ設定を変更できます。

ネットワーク設定

ネットワーク設定やセキュリティ設定を変更できます。
パブリックアクセスからプライベートアクセスへの変更も可能です。

※ファイアウォール規則の設定も引き継がれます。

リストア後のリソース設定を確認

リストアした、Azure Database for MySQL フレキシブル サーバーのリソースを確認します。

リストア後の確認
リストアが完了すると、一覧に表示されます。
状態が利用可能になっていることも確認できます。
データベースも復元されている事を確認できます。

コンピューティングとストレージのメニューで、サーバーの構成を確認できます。
同じ設定でリストアされている事を確認できます。

なお、リストア時に高可用性は無効化されます。リストア後に再設定が必要です。

ネットワークのメニューで、既存のファイアウォール規則が引き継がれている事を確認できます。

リストアしたサーバーでも、初回バックアップが取得されている事を確認できます。

—広告—

最後に

Azure Database for MySQL フレキシブル サーバーのバックアップリストアについて、概要や手順を確認しました。
リストアというと同じサーバーにデータベースを戻すイメージがありますが、バックアップデータを基に別のサーバー名でリソースを新規作成する形になることが確認できました。
HA構成など、リストア後に必要な設定もあり、リストア時にできないことやリストア後に必要な作業内容を把握しておく必要があると思いました。

引き続き、いろいろ試してみたいと思います。

Azure Database for MySQL フレキシブル サーバーのレプリケーション設定については、こちらで紹介しています。

Azure Database for PostgreSQL フレキシブル サーバーのバックアップリストアについては、こちらで紹介しています。

スポンサーリンク