Data Management (DMS) のデータ追跡機能は、バイナリログを解析して特定のタイムウィンドウ内のデータ変更を特定し、必要に応じてロールバックスクリプトをバッチでエクスポートします。この機能を使用してロールバックスクリプトを生成し、PolarDB for MySQL データベースで誤って削除または変更されたレコードを復元します。
前提条件
開始する前に、次のことを確認してください:
-
バイナリログがデータベースで有効になっていること
-
DMS コンソールでクラスター制御モードが [柔軟な管理] または [安定的な変更] である場合、コンソールでクラスターにログインしていること
制限事項
-
各データ追跡チケットは、最大 6 時間 の時間範囲をカバーします。より長い期間の変更を追跡するには、複数のチケットを申請してください。
-
この機能は、誤って削除または変更されたデータ量が 100,000 レコード未満 の場合にのみ適用されます。
ステップ 1:ロールバックスクリプトの追跡とエクスポート
データ追跡チケットを申請してバイナリログを解析し、変更レコードを確認して、ロールバックスクリプトをエクスポートします。
-
新しい DMS コンソールにログインします。
-
上部ナビゲーションバーで、[データベース開発] をクリックします。左側ナビゲーションウィンドウで、 を選択します。
-
「データ追跡」タブの右上隅で、[+データ追跡] をクリックします。
-
[データ追跡作業指示アプリケーション] ページで、以下のパラメーターを設定します。

パラメーター
説明
タスク名
必須。チケットのわかりやすい名前。
ライブラリ名
誤って変更されたデータが含まれるデータベース。
テーブル名
誤って変更されたデータが含まれるテーブル。
追跡タイプ
追跡するデータ操作のタイプ。必要に応じて 1 つ以上のタイプを選択します。
時間範囲
検索する時間範囲。デフォルト:過去 2 時間。最大:チケットあたり 6 時間。対象の時間範囲が 6 時間を超える場合は、複数のチケットを申請してください。最も早い開始時刻は、バイナリログがインスタンスに最初に保存された時点です。
-
[送信] をクリックします。DMS がバイナリログを自動的に取得します。
ログが取得されると、チケットは [承認] ステップに移動します。
説明バイナリログ機能が無効になっている場合、またはデータベースにログインしていない場合、DMS はバイナリログを取得できません。
-
承認を待ちます。
説明デフォルトでは、対応するデータベース管理者 (DBA) がデータ追跡チケットを承認します。
-
承認後、DMS はバイナリログをダウンロードして解析します。
-
ロールバックする変更レコードを選択し、ロールバックスクリプトのエクスポート をクリックします。
ステップ 2:ロールバックスクリプトの実行
データ変更チケットを申請して、エクスポートされたロールバックスクリプトを対象のデータベースに対して実行します。
-
上部のナビゲーションバーで、[データベース開発] をクリックします。 左側のナビゲーションウィンドウで、 を選択します。
-
「[データ変更チケット申請]」ページで、以下のパラメーターを設定し、「[送信]」をクリックします。

表 1. データ変更パラメーター
パラメーター
説明
データベース
復元するデータベース。
影響を受ける行
必須。データ消去操作の影響を受ける可能性があるデータ行の推定数です。実際の影響を受ける行数を取得するには、[SQLConsole] タブで
COUNTクエリを実行します。変更 SQL
[添付ファイル] を選択し、ステップ 1 でエクスポートしたロールバック スクリプトをアップロードします。
-
DMS が構成を検証するのを待ちます。
-
チケットを申請して承認を受けます。承認後、DMS はタスクを生成します。
説明デフォルトでは、対応する DBA がデータ変更チケットを承認します。
-
[変更を実行] をクリックします。