

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

# MySQL の評価
<a name="CHAP_Tasks.AssessmentReport.MySQL"></a>

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

**Topics**
+ [バイナリログトランザクション圧縮が無効になっているかどうかを検証する](#CHAP_Tasks.AssessmentReport.MySQL.BinaryLogTransaction)
+ [DMS ユーザーにソースデータベースの REPLICATION CLIENT および REPLICATION SLAVE アクセス許可があるかどうかを検証する](#CHAP_Tasks.AssessmentReport.MySQL.ReplicationClientPermissions)
+ [DMS ユーザーにソースデータベーステーブルの SELECT アクセス許可があるかどうかを検証する](#CHAP_Tasks.AssessmentReport.MySQL.DMSUserSelectPermissions)
+ [server\$1id がソースデータベースで 1 以上に設定されているかどうかを検証する](#CHAP_Tasks.AssessmentReport.MySQL.ServerID)
+ [DMS ユーザーにターゲットとしての MySQL データベースに必要なアクセス許可があるかどうかを検証する](#CHAP_Tasks.AssessmentReport.MySQL.UserNecessaryPermissions)
+ [ソースデータベースにバイナリログの自動削除が設定されているかどうかを検証する](#CHAP_Tasks.AssessmentReport.MySQL.BinaryLogAutomaticRemoval)
+ [`BatchApplyEnabled` が true に設定されている場合、制限付き LOB モードのみを使用していることを検証する](#CHAP_Tasks.AssessmentReport.MySQL.LimitedLOBMode)
+ [テーブルが Innodb以外のストレージエンジンを使用しているかどうかを検証する](#CHAP_Tasks.AssessmentReport.MySQL.Innodb)
+ [移行に使用されるテーブルで自動増分が有効になっているかどうかを検証する](#CHAP_Tasks.AssessmentReport.MySQL.AutoIncrement)
+ [データベースのバイナリログイメージが DMS CDC をサポートするように `FULL` に設定されているかどうかを検証する](#CHAP_Tasks.AssessmentReport.MySQL.BinlogImage)
+ [ソースデータベースが MySQL Read-Replica であるかどうかを検証する](#CHAP_Tasks.AssessmentReport.MySQL.ReadReplica)
+ [テーブルにパーティションがあるかどうかを検証し、フルロードタスク設定の `target_table_prep_mode` を推奨する](#CHAP_Tasks.AssessmentReport.MySQL.FullLoadTaskSettings)
+ [DMS がデータベースバージョンをサポートしているかどうかを検証する](#CHAP_Tasks.AssessmentReport.MySQL.DatabaseVersion)
+ [ターゲットデータベースで `local_infile` が 1 に設定されているかどうかを検証します。](#CHAP_Tasks.AssessmentReport.MySQL.LocalInfile)
+ [ターゲットデータベースに外部キーを持つテーブルがあるかどうかを検証する](#CHAP_Tasks.AssessmentReport.MySQL.ForeignKeys)
+ [タスクの範囲にあるソーステーブルにカスケード制約があるかどうかを検証する](#CHAP_Tasks.AssessmentReport.MySQL.Cascade)
+ [タイムアウト値が MySQL ソースまたはターゲットに適しているかどうかを検証する](#CHAP_Tasks.AssessmentReport.MySQL.Timeout)
+ [`max_statement_time` データベースパラメータの検証](#CHAP_Tasks.AssessmentReport.MySQL.max_statement_time)
+ [プライマリキーまたは一意のインデックスがバッチ適用のターゲットに存在するかどうかを検証する](#CHAP_Tasks.AssessmentReport.MySQL.batchapply_absence)
+ [プライマリキーと一意のインデックスの両方がバッチ適用のターゲットに存在するかどうかを検証する](#CHAP_Tasks.AssessmentReport.MySQL.batchapply_simul)
+ [フルロード中にターゲットデータベースでセカンダリインデックスが有効になっているかどうかを検証する](#CHAP_Tasks.AssessmentReport.MySQL.secondaryindexes)
+ [DMS 検証が有効になっている場合にテーブルにプライマリキーまたは一意のインデックスがあるかどうかを検証する](#CHAP_Tasks.AssessmentReport.MySQL.pk_validity)
+ [`MaxFullLoadSubTasks` 設定の使用に関する推奨事項](#CHAP_Tasks.AssessmentReport.MySQL.fullload_subtasks)
+ [数字ランダム化の変換ルールを確認する](#CHAP_Tasks.AssessmentReport.MySQL.digits.randomise)
+ [数字マスクの変換ルールを確認する](#CHAP_Tasks.AssessmentReport.MySQL.digits.mask)
+ [ハッシュマスクの変換ルールを確認する](#CHAP_Tasks.AssessmentReport.MYSQL.hash.mask)
+ [データ検証タスク設定とデータマスキングの数字ランダム化が同時に有効になっていないことを確認する](#CHAP_Tasks.AssessmentReport.MYSQL.all.digits.random)
+ [データ検証タスク設定とデータマスキングのハッシュマスクが同時に有効になっていないことを確認する](#CHAP_Tasks.AssessmentReport.MYSQL.all.hash.mask)
+ [データ検証タスク設定とデータマスキングの数字マスクが同時に有効になっていないことを確認する](#CHAP_Tasks.AssessmentReport.MYSQL.all.digit.mask)
+ [Amazon Aurora MySQL ソースインスタンスがリードレプリカでないかどうかを確認する](#CHAP_Tasks.AssessmentReport.MYSQL.read.only)
+ [バイナリログの保持時間が正しく設定されているかどうかを確認する](#CHAP_Tasks.AssessmentReport.MYSQL.retention.time)
+ [ソーステーブルに非表示の列がないかどうかを確認します。](#CHAP_Tasks.AssessmentReport.MYSQL.invisible.columns)
+ [データベースのバイナリログ形式が DMS CDC をサポートするように ROW に設定されているかどうかを検証する](#CHAP_Tasks.AssessmentReport.MYSQL.binlog.format)
+ [選択したオブジェクトが少なくとも 1 つソースデータベースに存在することを検証します](#CHAP_Tasks.AssessmentReport.MYSQL.selection.rules)
+ [生成された列を持つテーブルがソースデータベースに存在することを確認する](#CHAP_Tasks.AssessmentReport.MYSQL.generated.columns)
+ [パーティション分割されたテーブルに対して skipTableSuspensionForPartitionDdl が有効になっていることを検証する](#CHAP_Tasks.AssessmentReport.MYSQL.tablepartition.ddl)
+ [max\$1allowed\$1packet サイズがソース LOB 列を処理できることを検証する](#CHAP_Tasks.AssessmentReport.MYSQL.maxallowed.packetlob)
+ [セカンダリ制約とインデックス (非プライマリ) がソースデータベースに存在することを確認する](#CHAP_Tasks.AssessmentReport.MYSQL.secondary.constraints)

## バイナリログトランザクション圧縮が無効になっているかどうかを検証する
<a name="CHAP_Tasks.AssessmentReport.MySQL.BinaryLogTransaction"></a>

**API キー:** `mysql-check-binlog-compression`

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

詳細については、「[Limitations on using a MySQL database as a source for AWS DMS](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.MySQL.html#CHAP_Source.MySQL.Limitations)」を参照してください。

## DMS ユーザーにソースデータベースの REPLICATION CLIENT および REPLICATION SLAVE アクセス許可があるかどうかを検証する
<a name="CHAP_Tasks.AssessmentReport.MySQL.ReplicationClientPermissions"></a>

**API キー:** `mysql-check-replication-privileges`

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

詳細については、「[Using any MySQL-compatible database as a source for AWS DMS](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.MySQL.html#CHAP_Source.MySQL.Prerequisites)」を参照してください。

## DMS ユーザーにソースデータベーステーブルの SELECT アクセス許可があるかどうかを検証する
<a name="CHAP_Tasks.AssessmentReport.MySQL.DMSUserSelectPermissions"></a>

**API キー:** `mysql-check-select-privileges`

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

詳細については、「[Using any MySQL-compatible database as a source for AWS DMS](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.MySQL.html#CHAP_Source.MySQL.Prerequisites)」を参照してください。

## server\$1id がソースデータベースで 1 以上に設定されているかどうかを検証する
<a name="CHAP_Tasks.AssessmentReport.MySQL.ServerID"></a>

**API キー:** `mysql-check-server-id`

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

のソースの詳細については AWS DMS、[「セルフマネージド MySQL 互換データベースをソースとして使用する AWS DMS](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.MySQL.html#CHAP_Source.MySQL.CustomerManaged)」を参照してください。

## DMS ユーザーにターゲットとしての MySQL データベースに必要なアクセス許可があるかどうかを検証する
<a name="CHAP_Tasks.AssessmentReport.MySQL.UserNecessaryPermissions"></a>

**API キー:** `mysql-check-target-privileges`

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

MySQL ソースエンドポイントの前提条件に関する詳細については、「[Using any MySQL-compatible database as a source for AWS DMS](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.MySQL.html#CHAP_Source.MySQL.Prerequisites)」を参照してください。

## ソースデータベースにバイナリログの自動削除が設定されているかどうかを検証する
<a name="CHAP_Tasks.AssessmentReport.MySQL.BinaryLogAutomaticRemoval"></a>

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

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

のソースの詳細については AWS DMS、[「セルフマネージド MySQL 互換データベースをソースとして使用する AWS DMS](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.MySQL.html#CHAP_Source.MySQL.CustomerManaged)」を参照してください。

## `BatchApplyEnabled` が true に設定されている場合、制限付き LOB モードのみを使用していることを検証する
<a name="CHAP_Tasks.AssessmentReport.MySQL.LimitedLOBMode"></a>

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

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

`BatchApplyEnabled` 設定に関する詳細については、「[DMS バッチ適用機能を使用して CDC レプリケーションパフォーマンスを向上させるにはどうすればよいですか?](https://repost.aws/knowledge-center/dms-batch-apply-cdc-replication)」を参照してください。

## テーブルが Innodb以外のストレージエンジンを使用しているかどうかを検証する
<a name="CHAP_Tasks.AssessmentReport.MySQL.Innodb"></a>

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

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

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

MySQL エンドポイントの制限事項の詳細については、「[MySQL データベースを のソースとして使用する場合の制限 AWS DMS](CHAP_Source.MySQL.md#CHAP_Source.MySQL.Limitations)」を参照してください。

## 移行に使用されるテーブルで自動増分が有効になっているかどうかを検証する
<a name="CHAP_Tasks.AssessmentReport.MySQL.AutoIncrement"></a>

**API キー:** `mysql-check-auto-increment`

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

MySQL エンドポイントの制限事項の詳細については、「[MySQL データベースを のソースとして使用する場合の制限 AWS DMS](CHAP_Source.MySQL.md#CHAP_Source.MySQL.Limitations)」を参照してください。MySQL での ID 列の処理については、[パート 2 の「IDENTITY 列の処理 AWS DMS](https://aws.amazon.com/blogs/database/handle-identity-columns-in-aws-dms-part-2/)」を参照してください。

## データベースのバイナリログイメージが DMS CDC をサポートするように `FULL` に設定されているかどうかを検証する
<a name="CHAP_Tasks.AssessmentReport.MySQL.BinlogImage"></a>

**API キー:** `mysql-check-binlog-image`

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

バイナリログイメージを `FULL` に設定するには、以下の操作を行います。
+ Amazon RDS の場合、この値はデフォルトで `FULL` になります。
+ オンプレミスまたは Amazon EC2 でホストされるデータベースの場合、`my.ini` (Microsoft Windows) または `my.cnf` (UNIX) の `binlog_row_image` 値を設定します。

この評価は、フルロードと CDC の移行、CDC のみの移行の場合にのみ利用できます。この評価は、フルロードのみの移行では有効ではありません。

## ソースデータベースが MySQL Read-Replica であるかどうかを検証する
<a name="CHAP_Tasks.AssessmentReport.MySQL.ReadReplica"></a>

**API キー:** `mysql-check-database-role`

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

`log_slave_updates` 値を `True` に設定するには、以下の操作を行います。
+ Amazon RDS の場合、データベースのパラメータグループを使用します。RDS データベースパラメータグループの使用に関する詳細については、「*Amazon RDS ユーザーガイド*」の「[Working with parameter groups](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_WorkingWithParamGroups.html)」を参照してください。
+ オンプレミスまたは Amazon EC2 でホストされるデータベースの場合、`my.ini` (Microsoft Windows) または `my.cnf` (UNIX) の `log_slave_updates` 値を設定します。

この評価は、フルロードと CDC の移行、CDC のみの移行の場合にのみ利用できます。この評価は、フルロードのみの移行では有効ではありません。

## テーブルにパーティションがあるかどうかを検証し、フルロードタスク設定の `target_table_prep_mode` を推奨する
<a name="CHAP_Tasks.AssessmentReport.MySQL.FullLoadTaskSettings"></a>

**API キー:** `mysql-check-table-partition`

この移行前評価では、ソースデータベースにパーティションを持つテーブルがあるかどうかを確認します。DMS は MySQL ターゲットにパーティションのないテーブルを作成します。パーティションテーブルをターゲットのパーティションテーブルに移行するには、以下を実行する必要があります。
+ ターゲット MySQL データベースにパーティションテーブルを事前に作成します。
+ `TRUNCATE_BEFORE_LOAD` または `DO_NOTHING` をフルロードタスク設定として使用するように DMS タスクを設定します。

MySQL エンドポイントの制限事項の詳細については、「[MySQL データベースを のソースとして使用する場合の制限 AWS DMS](CHAP_Source.MySQL.md#CHAP_Source.MySQL.Limitations)」を参照してください。

## DMS がデータベースバージョンをサポートしているかどうかを検証する
<a name="CHAP_Tasks.AssessmentReport.MySQL.DatabaseVersion"></a>

**API キー:** `mysql-check-supported-version`

この移行前評価では、ソースデータベースバージョンが DMS と互換性があるかどうかを検証します。サポートされている MySQL のバージョンについては、「[データ移行のソースエンドポイント](CHAP_Introduction.Sources.md#CHAP_Introduction.Sources.DataMigration)」を参照してください。

## ターゲットデータベースで `local_infile` が 1 に設定されているかどうかを検証します。
<a name="CHAP_Tasks.AssessmentReport.MySQL.LocalInfile"></a>

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

 この移行前評価では、ターゲットデータベースの `local_infile` パラメータが 1 に設定されているかどうかを確認します。DMS では、ターゲットデータベースへのフルロード中に「local\$1infile」パラメータを 1 に設定する必要があります。詳細については、「[を使用した MySQL から MySQL への移行 AWS DMS](CHAP_Source.MySQL.md#CHAP_Source.MySQL.Homogeneous)」を参照してください。

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

## ターゲットデータベースに外部キーを持つテーブルがあるかどうかを検証する
<a name="CHAP_Tasks.AssessmentReport.MySQL.ForeignKeys"></a>

**API キー:** `mysql-check-fk-target`

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

DMS の参照整合性の詳細については、「[AWS DMS 移行のパフォーマンスの向上](CHAP_BestPractices.md#CHAP_BestPractices.Performance)」トピックの「**Working with indexes, triggers, and referential integrity constraints**」を参照してください。

## タスクの範囲にあるソーステーブルにカスケード制約があるかどうかを検証する
<a name="CHAP_Tasks.AssessmentReport.MySQL.Cascade"></a>

**API キー:** `mysql-check-cascade-constraints`

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

カスケード制約やその他の制約のサポートについては、「**Troubleshooting migration tasks in AWS DMS**」トピックの「[インデックス、外部キー、カスケード更新、または削除が移行されない](CHAP_Troubleshooting.md#CHAP_Troubleshooting.MySQL.FKsAndIndexes)」を参照してください。

## タイムアウト値が MySQL ソースまたはターゲットに適しているかどうかを検証する
<a name="CHAP_Tasks.AssessmentReport.MySQL.Timeout"></a>

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

この移行前評価では、タスクの MySQL エンドポイントの `net_read_timeout`、`net_write_timeout`、`wait_timeout` の設定が少なくとも 300 秒に設定されているかどうかを確認します。これは、移行中の切断を防止するために必要です。

詳細については、「[ターゲット MySQL のインスタンスへの接続は、タスクの実行中に接続が切断されます](CHAP_Troubleshooting.md#CHAP_Troubleshooting.MySQL.ConnectionDisconnect)」を参照してください。

## `max_statement_time` データベースパラメータの検証
<a name="CHAP_Tasks.AssessmentReport.MySQL.max_statement_time"></a>

**API キー:** `mysql-check-max-statement-time`

MySQL ベースのソースの `max_Statement_time` ソースパラメータを確認します。10 億を超えるテーブルがある場合は、`max_Statement_time` 値を検証し、データ損失の可能性を回避するためにより大きな値に設定することを推奨します。

## プライマリキーまたは一意のインデックスがバッチ適用のターゲットに存在するかどうかを検証する
<a name="CHAP_Tasks.AssessmentReport.MySQL.batchapply_absence"></a>

**API キー:** `mysql-check-batch-apply-target-pk-ui-absence`

バッチ適用は、ターゲットテーブルでプライマリキーまたは一意のインデックスを持つテーブルでのみサポートされます。プライマリキーまたは一意のインデックスがないテーブルはバッチが失敗し、変更は一つずつ処理されます。このようなテーブルは独自のタスクに移動し、代わりにトランザクション適用モードを活用することをお勧めします。または、ターゲットテーブルに一意のキーを作成することができます。

詳細については、「[Using a MySQL-compatible database as a target for AWS Database Migration Service](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.MySQL.html)」を参照してください。

## プライマリキーと一意のインデックスの両方がバッチ適用のターゲットに存在するかどうかを検証する
<a name="CHAP_Tasks.AssessmentReport.MySQL.batchapply_simul"></a>

**API キー:** `mysql-check-batch-apply-target-pk-ui-simultaneously`

バッチ適用は、ターゲットテーブルでプライマリキーまたは一意のインデックスを持つテーブルでのみサポートされます。プライマリキーまたは一意のインデックスが同時に存在するテーブルはバッチが失敗し、変更は一つずつ処理されます。このようなテーブルは独自のタスクに移動し、代わりにトランザクション適用モードを活用することをお勧めします。または、移行を実行している場合は、ターゲットテーブルの一意のキーまたはプライマリキーを削除してから、ターゲットテーブルを再構築することもできます。

詳細については、「[Using a MySQL-compatible database as a target for AWS Database Migration Service](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.MySQL.html)」を参照してください。

## フルロード中にターゲットデータベースでセカンダリインデックスが有効になっているかどうかを検証する
<a name="CHAP_Tasks.AssessmentReport.MySQL.secondaryindexes"></a>

**API キー:** `mysql-check-secondary-indexes`

ターゲットデータベースのセカンダリインデックスを無効化または削除することを検討してください。セカンダリインデックスは、フルロード中の移行パフォーマンスに影響を与える可能性があります。キャッシュされた変更を適用する前にセカンダリインデックスを有効にすることをお勧めします。

詳細については、「[AWS Database Migration Serviceのベストプラクティス](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_BestPractices.html)」を参照してください。

## DMS 検証が有効になっている場合にテーブルにプライマリキーまたは一意のインデックスがあるかどうかを検証する
<a name="CHAP_Tasks.AssessmentReport.MySQL.pk_validity"></a>

**API キー:** `mysql-check-pk-validity`

データ検証では、テーブルにプライマリキーまたは一意のインデックスがなければなりません。

詳細については、「[AWS DMS data validation](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Validating.html)」を参照してください。

## `MaxFullLoadSubTasks` 設定の使用に関する推奨事項
<a name="CHAP_Tasks.AssessmentReport.MySQL.fullload_subtasks"></a>

**API キー:** `mysql-tblnum-for-max-fullload-subtasks`

この評価では、タスクに含まれるテーブルの数を確認し、フルロードプロセス中に最適なパフォーマンスが得られるように `MaxFullLoadSubTasks` パラメータの値を大きくすることを推奨します。デフォルトでは、 は 8 つのテーブルを同時に AWS DMS 移行します。`MaxFullLoadSubTasks` パラメータをより大きな値に変更すると、フルロードのパフォーマンスが向上します。

詳細については、「[Full-load task settings](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Tasks.CustomizingTasks.TaskSettings.FullLoad.html)」を参照してください。

## 数字ランダム化の変換ルールを確認する
<a name="CHAP_Tasks.AssessmentReport.MySQL.digits.randomise"></a>

**API キー:** `mysql-datamasking-digits-randomize`

この評価では、テーブルマッピングで使用される列が数字ランダム化の変換ルールに適合しているかどうかを検証します。さらに、変換対象として選択された列がプライマリキー、一意の制約、または外部キーの一部であるかどうかも確認します。これは、数字ランダム化の変換を適用しても一意性は保証されないためです。

## 数字マスクの変換ルールを確認する
<a name="CHAP_Tasks.AssessmentReport.MySQL.digits.mask"></a>

**API キー:** `mysql-datamasking-digits-mask`

この評価では、テーブルマッピングで使用される列が数字マスクの変換ルールでサポートされていないかどうかを検証します。さらに、変換対象として選択された列がプライマリキー、一意の制約、または外部キーの一部であるかどうかも確認します。これは、一意性が保証されないために、このような列に数字マスクの変換を適用すると、DMS タスクが失敗する可能性があるからです。

## ハッシュマスクの変換ルールを確認する
<a name="CHAP_Tasks.AssessmentReport.MYSQL.hash.mask"></a>

**API キー:** `mysql-datamasking-hash-mask`

この評価では、テーブルマッピングで使用される列がハッシュマスクの変換ルールでサポートされていないかどうかを検証します。また、ソース列の長さが 64 文字を超えているかどうかも確認します。ハッシュマスキングをサポートするには、ターゲット列の長さが 64 文字を超えていることが理想的です。さらに、変換対象として選択された列がプライマリキー、一意の制約、または外部キーの一部であるかどうかも確認します。これは、数字ランダム化の変換を適用しても一意性は保証されないためです。

## データ検証タスク設定とデータマスキングの数字ランダム化が同時に有効になっていないことを確認する
<a name="CHAP_Tasks.AssessmentReport.MYSQL.all.digits.random"></a>

**API キー:** `all-to-all-validation-with-datamasking-digits-randomize`

この移行前評価では、データ検証設定とデータマスキングの数字ランダム化が同時に有効になっていないことを確認します。これらの機能には互換性はありません。

## データ検証タスク設定とデータマスキングのハッシュマスクが同時に有効になっていないことを確認する
<a name="CHAP_Tasks.AssessmentReport.MYSQL.all.hash.mask"></a>

**API キー:** `all-to-all-validation-with-datamasking-hash-mask`

この移行前評価では、データ検証設定とデータマスキングのハッシュマスクが同時に有効になっていないことを確認します。これらの機能には互換性はありません。

## データ検証タスク設定とデータマスキングの数字マスクが同時に有効になっていないことを確認する
<a name="CHAP_Tasks.AssessmentReport.MYSQL.all.digit.mask"></a>

**API キー:** `all-to-all-validation-with-digit-mask`

この移行前評価では、データ検証設定とデータマスキングの数字マスクが同時に有効になっていないことを確認します。これらの機能には互換性はありません。

## Amazon Aurora MySQL ソースインスタンスがリードレプリカでないかどうかを確認する
<a name="CHAP_Tasks.AssessmentReport.MYSQL.read.only"></a>

**API キー:** `mysql-check-aurora-read-only`

この移行前評価では、2 つの Amazon Aurora MySQL クラスター間での移行でソースエンドポイントがレプリカインスタンスではなく読み取り/書き込みインスタンスであることを確認します。

## バイナリログの保持時間が正しく設定されているかどうかを確認する
<a name="CHAP_Tasks.AssessmentReport.MYSQL.retention.time"></a>

**API キー:** `mysql-check-binlog-retention-time`

この移行前評価では、「バイナリログの保持時間」の値が 24 時間を超えているかどうかを検証します。

## ソーステーブルに非表示の列がないかどうかを確認します。
<a name="CHAP_Tasks.AssessmentReport.MYSQL.invisible.columns"></a>

**API キー:** `mysql-check-invisible-columns`

この移行前評価では、ソーステーブルに非表示の列がないかどうかを検証します。 AWS DMS は、ソースデータベースの非表示の列からデータを移行しません。

## データベースのバイナリログ形式が DMS CDC をサポートするように ROW に設定されているかどうかを検証する
<a name="CHAP_Tasks.AssessmentReport.MYSQL.binlog.format"></a>

**API キー:** `mysql-check-binlog-format`

この移行前評価では、ソースデータベースのバイナリログ形式が変更データキャプチャ (CDC) をサポートするように ROW に設定されているかどうかを検証します。バイナリログ形式を ROW に設定するには、以下の操作を行います。
+ Amazon RDS の場合、データベースのパラメータグループを使用します。詳細については、「Amazon Relational Database Service ユーザーガイド」の「[シングル AZ データベースの MySQL バイナリログの設定](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_LogAccess.MySQL.BinaryFormat.html)」を参照してください。
+ オンプレミスまたは Amazon EC2 でホストされるデータベースの場合、`my.ini` (Microsoft Windows) または `my.cnf ` (UNIX) の `binlog_format` 値を設定します。

この評価は、フルロードと CDC の移行、CDC のみの移行の場合にのみ利用できます。この評価は、フルロードのみの移行では有効ではありません。セルフホスト型 MySQL サーバーに関する詳細については、「[Using a self-managed MySQL-compatible database as a source for AWS DMS](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.MySQL.html#CHAP_Source.MySQL.CustomerManaged)」を参照してください。

## 選択したオブジェクトが少なくとも 1 つソースデータベースに存在することを検証します
<a name="CHAP_Tasks.AssessmentReport.MYSQL.selection.rules"></a>

**API キー:** `all-check-source-selection-rules`

この移行前評価では、ワイルドカードベースのルールのパターンマッチングなど、選択ルールで指定された少なくとも 1 つのオブジェクトがソースデータベースに存在することを確認します。

## 生成された列を持つテーブルがソースデータベースに存在することを確認する
<a name="CHAP_Tasks.AssessmentReport.MYSQL.generated.columns"></a>

**API キー:** `mysql-check-generated-columns`

この移行前評価では、MySQL ソーステーブルのいずれかが columns. AWS DMS tasks を生成した列を移行またはレプリケートしていないかどうかを確認します。生成された列を移行する方法については、「[MySQL データベースを のソースとして使用する場合の制限 AWS DMS](CHAP_Source.MySQL.md#CHAP_Source.MySQL.Limitations)」を参照してください。

## パーティション分割されたテーブルに対して skipTableSuspensionForPartitionDdl が有効になっていることを検証する
<a name="CHAP_Tasks.AssessmentReport.MYSQL.tablepartition.ddl"></a>

**API キー:** `mysql-check-skip-table-suspension-partition-ddl`

この移行前評価では、ソースデータベース内のパーティションテーブルを検出し、`skipTableSuspensionForPartitionDdl`パラメータ設定を検証します。このパラメータを設定しないと、移行中に不要なテーブルの停止が発生する可能性があります。詳細については、次のリンクを参照してください: [MySQL データベースを のソースとして使用する場合の制限 AWS DMS](CHAP_Source.MySQL.md#CHAP_Source.MySQL.Limitations)。

## max\$1allowed\$1packet サイズがソース LOB 列を処理できることを検証する
<a name="CHAP_Tasks.AssessmentReport.MYSQL.maxallowed.packetlob"></a>

**API キー:** `mysql-check-max-allowed-packet-lob`

AWS DMS は、現在の`max_allowed_packet`設定を超えるソーステーブルの LOB 列を検出します。この不一致により、データ移行中にレプリケーションが失敗する可能性があります。詳細については、「[MySQL に関する問題のトラブルシューティング](CHAP_Troubleshooting.md#CHAP_Troubleshooting.MySQL)」を参照してください。

## セカンダリ制約とインデックス (非プライマリ) がソースデータベースに存在することを確認する
<a name="CHAP_Tasks.AssessmentReport.MYSQL.secondary.constraints"></a>

**API キー:** `all-check-secondary-constraints`

この移行前評価では、セカンダリ制約とインデックス (外部キー、チェック制約、クラスター化されていないインデックス) がソースデータベースに存在することを確認します。