評価SQL - AWS データベース移行サービス
バイナリログトランザクション圧縮が無効になっているかどうかを検証するDMS ユーザーがソースデータベースの REPLICATIONCLIENTおよび アクセスREPLICATIONSLAVE許可を持っているかどうかを検証するDMS ユーザーがソースデータベーステーブルに対するSELECTアクセス許可を持っているかどうかを検証するソースデータベースで server_id が 1 以上に設定されているかどうかを検証するDMS ユーザーがターゲットとしてのマイSQLデータベースに必要なアクセス許可を持っているかどうかを検証するソースデータベースにバイナリログの自動削除が設定されているかどうかを検証するが true BatchApplyEnabledに設定されている場合にのみ制限LOBモードが使用されることを検証するテーブルが Innodb 以外のストレージエンジンを使用しているかどうかを検証する移行に使用されるテーブルで自動インクリメントが有効になっているかどうかを検証するデータベースバイナリログイメージが をサポートするFULLように に設定されているかどうかを検証する DMS CDCソースデータベースが MySQL Read-Replica であるかどうかを検証するテーブルにパーティションがあるかどうかを検証し、フルロードタスク設定target_table_prep_modeに を推奨します。がデータベースバージョンDMSをサポートしているかどうかを検証するターゲットデータベースが を 1 local_infileに設定するように設定されているかどうかを検証するターゲットデータベースに外部キーを持つテーブルがあるかどうかを検証するタスクスコープ内のソーステーブルにカスケード制約があるかどうかを検証するタイムアウト値が MySQL ソースまたはターゲットに適しているかどうかを検証する

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

評価SQL

このセクションでは、My 、Aurora My SQL互換エディションSQL、または Aurora My 互換SQLエディションのサーバーレスソースエンドポイントを使用する移行タスクの個々の移行前評価について説明します。

トピック

バイナリログトランザクション圧縮が無効になっているかどうかを検証する

API キー: mysql-check-binlog-compression

この移行前評価では、バイナリログトランザクション圧縮が無効になっているかどうかを検証します。 はバイナリログトランザクション圧縮をサポート AWS DMS していません。

詳細については、「 のソースとしての MySQL データベースの使用に関する制限事項 AWS DMS」を参照してください。

DMS ユーザーがソースデータベースの REPLICATIONCLIENTおよび アクセスREPLICATIONSLAVE許可を持っているかどうかを検証する

API キー: mysql-check-replication-privileges

この移行前評価では、ソースエンドポイント接続設定で指定されたDMSユーザーが、DMSタスク移行タイプが CDCまたは全ロード + の場合、ソースデータベースの REPLICATION CLIENTおよび アクセスREPLICATION SLAVE許可を持っているかどうかを検証しますCDC。

詳細については、「 のソースとして SQL互換データベースを使用する AWS DMS」を参照してください。

DMS ユーザーがソースデータベーステーブルに対するSELECTアクセス許可を持っているかどうかを検証する

API キー: mysql-check-select-privileges

この移行前評価では、ソースエンドポイント接続設定で指定されたDMSユーザーがソースデータベーステーブルに対するSELECTアクセス許可を持っているかどうかを検証します。

詳細については、「 のソースとして SQL互換データベースを使用する AWS DMS」を参照してください。

ソースデータベースで server_id が 1 以上に設定されているかどうかを検証する

API キー: mysql-check-server-id

この移行前評価では、CDC移行タイプのソースデータベースでserver_idサーバー変数が 1 以上に設定されているかどうかを検証します。

のソースの詳細については AWS DMS、「 のソースとしてセルフマネージド My SQL互換データベースを使用する AWS DMS」を参照してください。

DMS ユーザーがターゲットとしてのマイSQLデータベースに必要なアクセス許可を持っているかどうかを検証する

API キー: mysql-check-target-privileges

この移行前評価では、ターゲットエンドポイント接続設定で指定されたDMSユーザーが、ターゲットとして MySQL データベースに必要なアクセス許可を持っているかどうかを検証します。

ソースSQLエンドポイントの前提条件の詳細については、「 のソースとして SQL互換データベースを使用する AWS DMS」を参照してください。

ソースデータベースにバイナリログの自動削除が設定されているかどうかを検証する

API キー: mysql-check-expire-logs-days

この移行前評価では、データベースがバイナリログを自動的に削除するように設定されているかどうかを検証します。移行中のディスク容量の過剰使用を防ぐため、 EXPIRE_LOGS_DAYSまたは BINLOG_EXPIRE_LOGS_SECONDS グローバルシステム変数の値は 0 より大きくする必要があります。

のソースの詳細については AWS DMS、「 のソースとしてセルフマネージド My SQL互換データベースを使用する AWS DMS」を参照してください。

が true BatchApplyEnabledに設定されている場合にのみ制限LOBモードが使用されることを検証する

API キー: mysql-batch-apply-lob-mode

この移行前評価では、DMSタスクにLOB列が含まれているかどうかを検証します。LOB 列がタスクのスコープに含まれている場合は、制限付きLOBモードでのみ BatchApplyEnabled を使用する必要があります。

BatchApplyEnabled 設定の詳細については、DMS「バッチ適用機能を使用してCDCレプリケーションのパフォーマンスを向上させるにはどうすればよいですか?」を参照してください。

テーブルが Innodb 以外のストレージエンジンを使用しているかどうかを検証する

API キー: mysql-check-table-storage-engine

この移行前評価では、ソース MySQL データベース内のテーブルに使用されるストレージエンジンが Innodb 以外のエンジンであるかどうかを検証します。DMS は、デフォルトで InnoDB ストレージエンジンを使用してターゲットテーブルを作成します。InnoDB 以外のストレージエンジンを使用する必要がある場合は、ターゲットデータベースにテーブルを手動で作成し、 TRUNCATE_BEFORE_LOADまたは をフルロードDMSタスク設定DO_NOTHINGとして使用するようにタスクを設定する必要があります。フルロードタスク設定の詳細については、「」を参照してください全ロードタスク設定

注記

この移行前評価は、Aurora My SQL互換エディションまたは Aurora My SQL互換エディションサーバーレスでは使用できません。

エンドポイントの制限の詳細については、SQL「」を参照してくださいのソースとして MySQL データベースを使用するための制限 AWS DMS

移行に使用されるテーブルで自動インクリメントが有効になっているかどうかを検証する

API キー: mysql-check-auto-increment

この移行前評価では、タスクで使用されるソーステーブルで自動インクリメントが有効になっているかどうかを検証します。DMS は、列の AUTO_INCREMENT 属性をターゲットデータベースに移行しません。

エンドポイントの制限の詳細については、SQL「」を参照してくださいのソースとして MySQL データベースを使用するための制限 AWS DMS。My での ID 列の処理についてはSQL、「 のIDENTITY列の処理 AWS DMS: パート 2」を参照してください。

データベースバイナリログイメージが をサポートするFULLように に設定されているかどうかを検証する DMS CDC

API キー: mysql-check-binlog-image

この移行前評価では、ソースデータベースのバイナリログイメージが に設定されているかどうかをチェックしますFULL。My ではSQL、 binlog_row_image変数は、 ROW形式を使用するときにバイナリログイベントがどのように書き込まれるかを決定します。との互換性を確保DMSし、 をサポートするにはCDC、 binlog_row_image変数を に設定しますFULL。この設定により、 は移行中にターゲットデータベースの完全なデータ操作言語 (DML) を構築するための十分な情報DMSを確実に受け取ります。

バイナリログイメージを に設定するにはFULL、次の手順を実行します。

  • Amazon の場合RDS、この値はFULLデフォルトで です。

  • オンプレミスまたは Amazon で接続されたデータベースの場合はEC2、 (Microsoft Windows) または my.ini () my.cnfbinlog_row_image値を設定しますUNIX。

この評価は、フルロードとCDC移行、または CDCのみの移行に対してのみ有効です。この評価は、フルロードのみの移行では有効ではありません。

ソースデータベースが MySQL Read-Replica であるかどうかを検証する

API キー: mysql-check-database-role

この移行前評価では、ソースデータベースがリードレプリカであるかどうかを検証します。リードレプリカに接続するDMSときに CDCのサポートを有効にするには、 log_slave_updatesパラメータを に設定しますTrue。セルフマネージド型マイSQLデータベースの使用の詳細については、「」を参照してくださいのソースとしてセルフマネージド My SQL互換データベースを使用する AWS DMS

log_slave_updates 値を に設定するにはTrue、次の手順を実行します。

  • Amazon ではRDS、データベースのパラメータグループを使用します。RDS データベースパラメータグループの使用の詳細については、「Amazon ユーザーガイド」の「パラメータグループの使用」を参照してください。 RDS

  • オンプレミスまたは Amazon で接続されたデータベースの場合はEC2、 (Microsoft Windows) または my.ini () my.cnflog_slave_updates値を設定しますUNIX。

この評価は、フルロードとCDC移行、または CDCのみの移行に対してのみ有効です。この評価は、フルロードのみの移行では有効ではありません。

テーブルにパーティションがあるかどうかを検証し、フルロードタスク設定target_table_prep_modeに を推奨します。

API キー: mysql-check-table-partition

この移行前評価では、ソースデータベースにパーティションを持つテーブルが存在するかどうかをチェックします。DMS は、マイSQLターゲットにパーティションのないテーブルを作成します。パーティション分割されたテーブルをターゲットのパーティション分割されたテーブルに移行するには、以下を実行する必要があります。

  • ターゲット MySQL データベースにパーティション分割されたテーブルを事前に作成します。

  • TRUNCATE_BEFORE_LOAD または をフルロードDMSタスク設定DO_NOTHINGとして使用するようにタスクを設定します。

エンドポイントの制限の詳細については、SQL「」を参照してくださいのソースとして MySQL データベースを使用するための制限 AWS DMS

がデータベースバージョンDMSをサポートしているかどうかを検証する

API キー: mysql-check-supported-version

この移行前評価では、ソースデータベースのバージョンが と互換性があるかどうかを検証しますDMS。CDC は、Amazon RDS My SQLバージョン 5.5 以前、または SQL8.0.x 以降のバージョンではサポートされていません。CDC は、マイSQLバージョン 5.6、5.7、または 8.0 でのみサポートされています。サポートされているマイSQLバージョンの詳細については、「」を参照してくださいデータ移行のソースエンドポイント

ターゲットデータベースが を 1 local_infileに設定するように設定されているかどうかを検証する

API キー: mysql-check-target-localinfile-set

この移行前評価では、ターゲットデータベースの local_infileパラメータが 1 に設定されているかどうかをチェックします。DMS では、ターゲットデータベースへの全ロード中に「local_infile」パラメータを 1 に設定する必要があります。詳細については、「を使用して MySQL から MySQL に移行する AWS DMS」を参照してください。

この評価は、フルロードまたはフルロードとCDCタスクに対してのみ有効です。

ターゲットデータベースに外部キーを持つテーブルがあるかどうかを検証する

API キー: mysql-check-fk-target

この移行前評価では、フルロードかフルロードか、マイSQLデータベースに移行するCDCタスクに外部キーを持つテーブルがあるかどうかを確認します。のデフォルト設定DMSでは、テーブルをアルファベット順にロードします。外部キーと参照整合性の制約があるテーブルは、親テーブルと子テーブルが同時にロードされない可能性があるため、ロードが失敗する可能性があります。

の参照整合性の詳細についてはDMS、AWS DMS 移行のパフォーマンスの向上「」トピックの「インデックス、トリガー、および参照整合性制約の使用」を参照してください。

タスクスコープ内のソーステーブルにカスケード制約があるかどうかを検証する

API キー: mysql-check-cascade-constraints

この移行前評価では、ソースSQLテーブルにカスケード制約があるかどうかをチェックします。MySQL はこれらのイベントの変更をバイナリログに記録しないため、カスケード制約はDMSタスクによって移行またはレプリケートされません。 AWS DMS はこれらの制約をサポートしていませんが、リレーショナルデータベースターゲットの回避策を使用できます。

大文字と小文字の制約やその他の制約のサポートについては、「 インデックス、外部キー、カスケード更新、または削除が移行されないトピックの移行タスクのトラブルシューティング」の AWS DMS「」を参照してください。

タイムアウト値が MySQL ソースまたはターゲットに適しているかどうかを検証する

API キー: mysql-check-target-network-parameter

この移行前評価では、タスクの MySQL エンドポイントに net_wait_timeoutがありnet_read_timeoutwait_timeout設定が少なくとも 300 秒に設定されているかどうかをチェックします。これは、移行中の切断を防ぐために必要です。

詳細については、「ターゲットへの接続 SQLタスク中にインスタンスが切断される」を参照してください。