AWS Database Migration Service (AWS DMS) のエラー処理タスクの設定を知りたいと考えています。
簡単な説明
変更データキャプチャ (CDC) 中のレプリケーションタスクの動作を変更するには、エラー処理設定を使用します。エラー処理設定は、データ操作言語 (DML) または環境エラーに基づいて、データレベル、テーブルレベルでエラーを管理できます。
環境エラーの例:
- レプリケーションインスタンスとソースまたはターゲット間の接続の問題
- レプリケーションインスタンスでのリソース競合によるタスク失敗
- ソースまたはターゲットが利用できない
環境上の問題は断続的に発生する可能性があるため、AWS DMS は障害発生時に自動再開する機能を予約しています。詳細については、「エラー処理タスクの設定」を参照してください。
解決策
注: AWS コマンドラインインターフェイス (AWS CLI) コマンドの実行中にエラーが発生した場合は、「AWS CLI エラーのトラブルシューティング」を参照してください。また、AWS CLI の最新バージョンを使用していることを確認してください。
AWS CLI を使用してタスクを変更する
1. AWS DMS コンソールを開きます。
2. ナビゲーションペインから、[データベース移行タスク] を選択します。
3. 変更するタスクが実行中の場合は、タスクを選択し、[アクション]、[停止] の順に選択します。
4. タスクが停止したら、タスクの名前を選択します。
5. 概要の詳細セクションから、**タスク設定 (JSON)**セクションを展開します。
6. タスクの設定をコピーして JSON エディターに貼り付けます。
7. ErrorBehavior の設定を編集します。以下の設定例では、FailOnTransactionConsistencyBreached を true に、RecoverableErrorCount を 10 に設定します。
"ErrorBehavior": {
"DataErrorPolicy": "LOG_ERROR",
"DataTruncationErrorPolicy": "LOG_ERROR",
"DataErrorEscalationPolicy": "SUSPEND_TABLE",
"DataErrorEscalationCount": 0,
"TableErrorPolicy": "SUSPEND_TABLE",
"TableErrorEscalationPolicy": "STOP_TASK",
"TableErrorEscalationCount": 0,
"RecoverableErrorCount": 10,
"RecoverableErrorInterval": 5,
"RecoverableErrorThrottling": true,
"RecoverableErrorThrottlingMax": 1800,
"ApplyErrorDeletePolicy": "IGNORE_RECORD",
"ApplyErrorInsertPolicy": "LOG_ERROR",
"ApplyErrorUpdatePolicy": "LOG_ERROR",
"ApplyErrorEscalationPolicy": "LOG_ERROR",
"ApplyErrorEscalationCount": 0,
"ApplyErrorFailOnTruncationDdl": false,
"FullLoadIgnoreConflicts": true,
"FailOnTransactionConsistencyBreached": true,
"FailOnNoTablesCaptured": false
8. JSON ファイルを保存し、後で使用できるように、タスク ARN とファイルパスを書き留めます。
9. AWS CLI の最新バージョンをまだインストールしていない場合は、インストールして設定します。
10. modify-replication-task コマンドを、タスク ARN と手順 8 で書き留めたファイルパスで実行します。
Linux の例:
aws dms modify-replication-task --replication-task-arn arn:aws:dms:us-east-1:112345679012:task:123eadf45gtJCVU2IBPzasetg5 --replication-task-settings file://your-task-settings.json
Windows の例:
aws dms modify-replication-task --replication-task-arn arn:aws:dms:us-east-1:112345679012:task:123eadf45gtJCVU2IBPzasetg5 --replication-task-settings file://"c:\\temp\\your-task-settings.json"
11. AWS DMS コンソールに戻ります。ナビゲーションペインから、[データベース移行タスク] を選択します。
12. タスクのステータスが変更中であることを確認します。
13. タスクの名前を選択します。
14. タスクの**[概要詳細]** セクションで、[タスク設定 (JSON)]を展開し、 ErrorBehavior 設定が更新されていることを確認します。
AWS DMS コンソールを使用してタスクを変更する
AWS DMS コンソールを使用してタスクを変更することもできます。詳細については、「タスクの変更」を参照してください。
関連情報
AWS Database Migration Service のベストプラクティス