すべてのプロダクト
Search
ドキュメントセンター

ApsaraDB RDS:DMSのデータ追跡機能を使用してデータを復元する

最終更新日:Jan 18, 2024

データ管理 (DMS) のデータベースのSQLコンソールでデータ変更操作を実行すると、偶発的な更新、削除、書き込み操作などの偶発的な操作により、データ変更が期待どおりに行えない場合があります。 この場合、DMSのデータ追跡機能を使用して、データを効率的に復元できます。 この機能は、バイナリログの保持期間内に実行されるデータ操作を追跡し、データ変更をロールバックするためのSQL文を生成するのに役立ちます。

背景情報

ApsaraDB RDS for MySQLインスタンスのデータが、偶発的な更新、削除、書き込み操作などの偶発的な操作によって期待値を満たさない場合は、data Management (DMS) のデータ追跡機能を使用してRDSインスタンスのデータを復元できます。 この機能は、他の代替復元方法と比較して、より効率的な方法でデータを復元する方法を提供します。 代替復元方法の詳細については、「完全データの復元」および「個々のデータベースとテーブルの復元」をご参照ください。

説明

データ復元方法の詳細については、「データ復元方法の概要」をご参照ください。

データ追跡機能と他の代替復元方法の違い

復元方法

ワークフロー

課金

スピード

復元可能な時間範囲

データ追跡

DMSのデータ追跡機能を使用して、指定された時間範囲にわたって行われたすべての更新を識別し、更新をロールバックするために使用されるステートメントを生成し、生成されたステートメントをスクリプトに集約します。 次に、RDSインスタンスでスクリプトを実行するためのチケットを起票します。 詳細については、「定期的なデータ変更の実行」をご参照ください。

  • RDSインスタンスの制御モードがFlexible Managementの場合、料金は発生しません。

  • RDSインスタンスの制御モードがStable ChangeまたはSecure Collaborationの場合、料金が発生します。 料金の詳細については、「料金」をご参照ください。

速い

復元可能な時間範囲は、制御モードとバイナリログの保存期間によって異なります。

  • RDSインスタンスの制御モードがFlexible Managementの場合、復元可能な期間は最大1時間です。

  • RDSインスタンスの制御モードがStable ChangeまたはSecure Collaborationの場合、復元可能な時間範囲は次の要因によって異なります。

完全なデータを復元

元のRDSインスタンスのすべてのデータを新しいRDSインスタンスに復元し、新しいRDSインスタンスのデータを確認してから、新しいRDSインスタンスから元のRDSインスタンス、既存のRDSインスタンス、またはオンプレミスデータベースインスタンスにデータを移行します。

  • 新しいRDSインスタンスに対して課金されます。 価格の詳細については、ApsaraDB RDSの購入ページをご覧ください。

  • 提供された無料クォータを超えるバックアップストレージ使用量に対して課金されます。 詳細については、「ApsaraDB RDS For MySQLインスタンスのバックアップストレージ料金」をご参照ください。

  • インターネット経由でRDSインスタンスのデータを移行するために消費されたトラフィックに対して課金されます。 詳細は、「料金」をご参照ください。

復元可能な時間範囲は、ログバックアップの保持期間とデータバックアップの保持期間によって異なります。 復元可能な時間範囲は最大730日です。 これらの保持期間を指定する方法の詳細については、「ApsaraDB RDS For MySQLインスタンスの自動バックアップ機能の有効化」をご参照ください。

個々のデータベースとテーブルの復元

個々のデータベース /テーブルの復元機能を有効にします。 次に、指定された個々のデータベースとテーブルのデータを新しいRDSインスタンスまたは既存のRDSインスタンスに復元します。 既存のRDSインスタンスにデータを復元すると、プライマリ /セカンダリの切り替えがトリガーされます。

  • 新しいRDSインスタンスにデータを復元すると、新しいインスタンスに対して課金されます。 価格の詳細については、ApsaraDB RDSの購入ページをご覧ください。

  • 提供された無料クォータを超えるバックアップストレージ使用量に対して課金されます。 詳細については、「バックアップストレージ料金」をご参照ください。

復元可能な時間範囲は、ログバックアップの保持期間と、[個々のデータベース /テーブルの復元] 機能が有効になっている時点によって異なります。 ログバックアップの保持期間は最大730日です。 詳細については、「ApsaraDB RDS For MySQLインスタンスの個々のデータベースとテーブルのバックアップ」をご参照ください。

前提条件

  • MySQL 5.6以降のデータベースが使用されます。

  • データベースに対してバイナリログ機能が有効になっています。

  • データベースにログオンしました。
    説明 データベースインスタンスがFlexible ManagementまたはStable Changeモードで管理されている場合、データベースインスタンスにログインする必要があります。 データベースインスタンスがSecurity Collaborationモードで管理されている場合、データベースインスタンスにログインする必要はありません。 制御モードの詳細については、「制御モード」をご参照ください。

使用上の注意

  • フレキシブル管理モード: 過去30分以内に実行されたDML操作のバイナリログにアクセスできます。 スクリプトのエクスポート、ロールバック、および再構築はできません。

  • 安定した変更モード: DML操作のバイナリログにアクセスするときに時間制限はありません。 スクリプトはバッチでダウンロードできます。

手順

  1. にログインします。 DMSコンソールV5.0
  2. 上部のナビゲーションバーで、[データベース開発] > [データ追跡] > [データ追跡チケット] を選択します。

    説明

    DMSコンソールをシンプルモードで使用する場合は、DMSコンソールの左上隅にある2022-10-21_15-25-22.pngアイコンの上にポインターを移動し、[すべての機能] > [データベース開発] > [データ追跡] > [データ追跡チケット] を選択します。

  3. Data Tracking Ticketページの右上隅にある [Data Tracking] をクリックします。

  4. データ追跡作業指示アプリケーション ページで、次の表に示すパラメーターを設定します。

    パラメーター

    説明

    タスク名

    将来の検索を容易にし、承認者がチケットの目的を理解するのに役立つ名前を入力します。

    ライブラリ名

    特定のデータベースインスタンスのデータベースを選択します。 DMSでデータベースを管理する権限が必要です。 フィールドにデータベース名のプレフィックスを入力し、一致した結果からデータベースを選択できます。

    テーブル名

    データ操作を追跡する1つ以上のテーブルを選択します。

    追跡タイプ

    追跡する操作の種類を1つ以上選択します。

    • Insert: INSERT操作をロールバックするためにDELETEステートメントが生成されます。

    • Update: UPDATEステートメントは、UPDATE操作をロールバックするために生成されます。

    • Delete: INSERTステートメントは、DELETE操作をロールバックするために生成されます。

    時間範囲

    データ操作を追跡する時間範囲を指定します。

    • データベースが属するデータベースインスタンスがFlexible Managementモードで管理されている場合、過去30分以内に実行されたデータ操作のみを追跡できます。

    • データベースが属するデータベースインスタンスが安定した変更またはセキュリティコラボレーションモードで管理されている場合、バイナリログの保持期間内に実行されたデータ操作を追跡できます。 ただし、時間範囲は1枚のチケットで最大48時間に制限されています。 48時間を超える時間範囲でデータ操作を追跡する場合は、時間範囲を分割して複数のチケットを送信します。

    関係者の変更

    チケットに関係する利害関係者を選択します。 選択した利害関係者とチケット承認者のみがチケットの詳細を表示できます。

  5. 申請書の送信 をクリックします。 DMSは、データベースのバイナリログを自動的に取得します。

    バイナリログを取得した後、チケットは承認ステップに入ります。

  6. チケットが承認されるまで待ちます。

    説明

    既定では、データベースのデータ追跡チケットは、データベースのデータベース管理者 (DBA) によって承認されます。 データ追跡チケットの承認ルールの詳細については、「データ追跡」をご参照ください。

  7. チケットが承認されたら、DMSがバイナリログをダウンロードして解析するのを待ちます。

  8. バイナリログをダウンロードして解析した後、[トラックタイプ][テーブル名][列名] などのフィルタ条件を指定して、ロールバックするデータ変更をフィルタリングできます。 データレコードを選択し、ロールバックスクリプトのエクスポート をクリックします。 ロールバックスクリプトがコンピュータにダウンロードされます。

    説明
    • データレコードを見つけて [詳細の表示] をクリックすると、データレコードの詳細を表示し、ロールバック文をコピーできます。

    • INSERTUPDATEDELETEの操作を追跡できます。

次のステップ