スキップしてコンテンツを表示

AWS DMS 移行タスクが失敗する原因となるエンドポイントの問題をトラブルシューティングする方法を教えてください。

所要時間2分
0

AWS Database Migration Service (AWS DMS) タスクがフルロードフェーズと変更データキャプチャ (CDC) フェーズで失敗し、エンドポイントの問題とデータベース固有のエラーが表示されます。

解決策

エンドポイントの接続設定を確認する

タスクのソースエンドポイントまたはターゲットエンドポイントの接続を確認するには、次の手順を実行します。

  1. AWS DMS コンソールを開きます。
  2. ナビゲーションペインで、[移行または複製] をクリックします。
  3. [タスク] を選択し、次に該当のタスクを選択します。
  4. [詳細] タブの [接続とセキュリティ] セクションのレプリケーションインスタンス名をチェックして、正しいレプリケーションインスタンスを使用していることを確認します。
  5. [概要] セクションで、ソースエンドポイントまたはターゲットエンドポイントを選択し、エンドポイントインターフェイスを確認します。
  6. [接続] タブをクリックし、[テスト接続] を選択します。
  7. [レプリケーションインスタンス] を選択し、[テストの実行] をクリックします。

ネットワーク構成が原因で接続テストの結果が [失敗] ステータスになった場合は、次のタイムアウトエラーメッセージが表示されます。

Oracle の場合:

'Test Endpoint failed: Application-Status: 1020912, Application-Message: ORA-12170: TNS:Connect timeout occurred OCI connection failure.'

PostgreSQL の場合:

'Test Endpoint failed: Application-Status: 1020912, Application-Message: Failed to connect Network error has occurred, Application-Detailed-Message: RetCode: SQL_ERROR SqlState: 08001 NativeError: 101 Message: '

Amazon DocumentDB (MongoDB 互換) の場合:

'Test Endpoint failed: Application-Status: 1020912, Application-Message: Failed to create new client connection Failed to connect to database., Application-Detailed-Message: Error verifying connection'

この問題を解決するには、「AWS DMS エンドポイントへの接続に関する障害をトラブルシューティングする方法を教えてください」を参照してください。その後、接続を再度テストします。

エンドポイント認証設定を確認する

AWS DMS エンドポイントの接続テストでは、認証エラーメッセージが表示されることがあります。認証エラーメッセージのトラブルシューティングを行うには、AWS DMS エンドポイントへのアクセスが正しく設定されていることを確認してください。

次の手順を実行します。

  1. AWS DMS コンソールを開きます。
  2. ナビゲーションペインで、[移行または複製] をクリックします。
  3. [エンドポイント] を選択し、該当のエンドポイントを選択します。
  4. [アクション]、[変更] の順にクリックします。
  5. [エンドポイント設定] セクションで、[エンドポイントデータベースへのアクセス] について以下を確認してください。
    アクセス情報を手動で指定することを選択した場合は、[サーバー名] フィールドで定義したホストにポート (3306) またはプロトコル (HTTP) が含まれていないことを確認します。データベースで同じユーザー名、パスワード、SSL 値を指定していることを確認してください。
    AWS Secrets Manager を選択し、正しいシークレットマネージャーと SSL モードを選択している場合は、「Common AWS DMS prerequisites」(一般的な AWS DMS の前提条件) と「Set up an Amazon VPC endpoint with AWS Secrets Manager」(AWS Secrets Manager を使用して Amazon VPC エンドポイントをセットアップする) を参照してください。
    Kerberos 認証を選択し、正しいサーバー名、ポート、ユーザー名を使用している場合は、「Prerequisites」(前提条件) と「Limitations on using Kerberos authentication with AWS DMS」(AWS DMS で Kerberos 認証を使用する際の制限事項) を参照してください。
    IAM 認証を選択し、正しいサーバー名、ポート、ユーザー名、AWS Identity and Access Management (IAM) ロールを使用している場合は、IAM ロールに正しいポリシーをアタッチしていることを確認してください。詳細については、「Configuring IAM authentication for Amazon RDS endpoint in AWS DMS」(AWS DMS の Amazon RDS エンドポイントの IAM 認証の設定) の「DMS Console」(DMS コンソール) タブおよび「IAM データベース認証の制限」を参照してください。

エンドポイント設定と ECA を確認する

タスクを実行するときに Oracle Pluggable Database (PDB) をソースとして使用すると、次のエラーメッセージが表示されることがあります。

"Test Endpoint failed: Application-Status: 1020912, Application-Message: Log Miner is not supported in Oracle PDB environment Endpoint initialization failed."

このエラーは、レプリケーション方法を [Binary Reader] ではなく [Log Miner] として設定したために発生します。

AWS DMS タスクが使用するレプリケーション方法を変更するには、次のステップを実行します。

  1. AWS DMS コンソールを開きます。
  2. ナビゲーションペインで、[移行または複製] をクリックします。
  3. [タスク] を選択し、次に該当のタスクを選択します。
  4. [概要] セクションで、ステートメントのソースリンクを選択します。
  5. [アクション]、[変更] の順にクリックします。
  6. [エンドポイント設定] で、[エンドポイント接続属性を使用する] を選択します。
  7. レプリケーション方法を [Binary Reader] として設定するには、[追加の接続属性 (ECA)] フィールドに useLogMinerReader=N;useBfile=Y; 属性を入力します。
  8. [保存] をクリックします。

クエリのタイムアウトエラーを確認する

AWS DMS タスクを開始すると、次の PostgreSQL クエリタイムアウトエラーメッセージが表示される場合があります。

"]E: RetCode: SQL_ERROR SqlState: 57014 NativeError: 1 Message: ERROR: canceling statement due to statement timeout; Error while executing the query [1022502] (ar_odbc_stmt.c:2738)"

ソースデータベースで AWS DMS タスクリクエストの executeTimeout パラメータを調整するには、次の手順を実行します。

  1. AWS DMS コンソールを開きます。
  2. ナビゲーションペインで [エンドポイント] をクリックし、該当のエンドポイントを選択します。
  3. [アクション]、[変更] の順にクリックします。
  4. [エンドポイント設定] セクションで、[エンドポイント接続属性を使用する] を選択します。
  5. カスタム executeTimeout を設定するには、[追加の接続属性 (ECA)] フィールドに executeTimeout=3600; と入力します。
  6. [保存] をクリックします。

それでもタイムアウトの問題が発生する場合は、「AWS DMS タスクが失敗し、エラーメッセージ "ERROR: canceling statement due to statement timeout" が表示される場合のトラブルシューティング方法を教えてください」を参照してください。

関連情報

Working with AWS DMS endpoints (AWS DMS エンドポイントの使用)

Creating source and target endpoints (ソースエンドポイントとターゲットエンドポイントの作成)

Advanced endpoint configuration (高度なエンドポイント設定)

AWS公式更新しました 8ヶ月前
コメントはありません

関連するコンテンツ