AWS Database Migration Service (AWS DMS) のエラー処理タスクの設定を知りたいと考えています。
簡単な説明
変更データキャプチャ (CDC) 中のレプリケーションタスクの動作を変更するには、エラー処理設定を使用します。エラー処理設定は、データ操作言語 (DML) または環境エラーに基づいて、データレベル、テーブルレベルでエラーを管理できます。
環境エラーの例:
- レプリケーションインスタンスとソースまたはターゲット間の接続の問題
- レプリケーションインスタンスでのリソース競合によるタスク失敗
- ソースまたはターゲットが利用できない
環境上の問題は断続的に発生する可能性があるため、AWS DMS は障害発生時に自動再開する機能を予約しています。詳細については、「エラー処理タスクの設定」を参照してください。
解決策
注: AWS コマンドラインインターフェイス (AWS CLI) コマンドの実行中にエラーが発生した場合は、「AWS CLI エラーのトラブルシューティング」を参照してください。また、AWS CLI の最新バージョンを使用していることを確認してください。
AWS CLI を使用してタスクを変更する
-
AWS DMS コンソールを開きます。
-
ナビゲーションペインから、[データベース移行タスク] を選択します。
-
変更するタスクが実行中の場合は、タスクを選択し、[アクション]、[停止] の順に選択します。
-
タスクが停止したら、タスクの名前を選択します。
-
概要の詳細セクションから、**タスク設定 (JSON)**セクションを展開します。
-
タスクの設定をコピーして JSON エディターに貼り付けます。
-
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
-
JSON ファイルを保存し、後で使用できるように、タスク ARN とファイルパスを書き留めます。
-
AWS CLI の最新バージョンをまだインストールしていない場合は、インストールして設定します。
-
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"
-
AWS DMS コンソールに戻ります。ナビゲーションペインから、[データベース移行タスク] を選択します。
-
タスクのステータスが変更中であることを確認します。
-
タスクの名前を選択します。
-
タスクの**[概要詳細]** セクションで、[タスク設定 (JSON)]を展開し、 ErrorBehavior 設定が更新されていることを確認します。
AWS DMS コンソールを使用してタスクを変更する
AWS DMS コンソールを使用してタスクを変更することもできます。詳細については、「タスクの変更」を参照してください。
関連情報
Best practices for AWS Database Migration Service (AWS Database Migration Service のベストプラクティス)