为以下各项指定任务设置Amazon数据库集群 - Amazon Database Migration Service
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

为以下各项指定任务设置Amazon数据库集群

每个任务都具有可根据数据库迁移需求配置的设置。您在 JSON 文件中创建这些设置,对于某些设置,可以使用 Amazon DMS 控制台指定它们。有关如何使用任务配置文件来设置任务设置的信息,请参见任务设置示例

有几种主要类型的任务设置,如下所列。

Task settings (任务设置) 相关文档

创建任务评估报告

您可以创建一个任务评估报告,以显示在迁移期间可能出现问题的任何不支持的数据类型。在运行任务之前,您可以针对任务运行该报告以找出潜在的问题。

为任务启用和使用迁移前评估

创建任务

在创建任务时,您可以指定源、目标和复制实例以及任何迁移设置。

创建任务

创建正在进行的复制任务

您可以设置任务,以便在源和目标之间提供持续复制。

使用 Amazon DMS 为持续复制创建任务

应用任务设置

每个任务都具有可根据数据库迁移需求配置的设置。您在 JSON 文件中创建这些设置,对于某些设置,可以使用 Amazon DMS 控制台指定它们。

为以下各项指定任务设置Amazon数据库集群

数据验证

数据验证用于让 Amazon DMS 比较目标数据存储与源数据存储中的数据。

AmazonDMS 数据验证

修改任务

停止任务后,您可以修改任务的设置。

修改任务

在执行任务期间重新加载表格

如果任务期间出错,您可以重新加载表。

在任务期间重新加载表

使用表映射

表映射使用多个类型的规则来指定任务设置,例如数据源、源架构、数据以及任务期间将发生的任何转换。

选择规则

选择规则和操作

转换规则

转换规则和操作

应用过滤器

您可以使用源筛选器来限制从源传输到目标的记录的数量和类型。例如,您可以指定仅将总部员工移动到目标数据库。还可以对数据列应用筛选器。

使用源筛选器

监控任务

可通过多种方式获取有关任务性能以及任务使用的表的信息。

监控AmazonDMS 任务

管理任务日志

您可以使用 Amazon DMS API 或 Amazon CLI 查看和删除任务日志。

查看和管理AmazonDMS 任务日志

任务设置示例

你可以使用任一Amazon Web Services Management Console或者Amazon CLI创建复制任务。如果您将Amazon CLI,你可以通过创建 JSON 文件来设置任务设置,然后将 JSON 文件的 file://URI 指定为 ReplicationTaskSettings的参数CreateReplicationTask操作。

以下示例说明如何使用Amazon CLI致电CreateReplicationTask操作:

aws dms create-replication-task \ --replication-task-identifier MyTask \ --source-endpoint-arn arn:aws:dms:us-west-2:123456789012:endpoint:ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABC \ --target-endpoint-arn arn:aws:dms:us-west-2:123456789012:endpoint:ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABC \ --replication-instance-arn arn:aws:dms:us-west-2:123456789012:rep:ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABC \ --migration-type cdc \ --table-mappings file://tablemappings.json \ --replication-task-settings file://settings.json

前面的示例使用名为的表映射文件tablemappings.json。有关表映射示例,请参见使用表映射指定任务设置

任务设置 JSON 文件可能如下所示:

{ "TargetMetadata": { "TargetSchema": "", "SupportLobs": true, "FullLobMode": false, "LobChunkSize": 64, "LimitedSizeLobMode": true, "LobMaxSize": 32, "InlineLobMaxSize": 0, "LoadMaxFileSize": 0, "ParallelLoadThreads": 0, "ParallelLoadBufferSize":0, "ParallelLoadQueuesPerThread": 1, "ParallelApplyThreads": 0, "ParallelApplyBufferSize": 100, "ParallelApplyQueuesPerThread": 1, "BatchApplyEnabled": false, "TaskRecoveryTableEnabled": false }, "FullLoadSettings": { "TargetTablePrepMode": "DO_NOTHING", "CreatePkAfterFullLoad": false, "StopTaskCachedChangesApplied": false, "StopTaskCachedChangesNotApplied": false, "MaxFullLoadSubTasks": 8, "TransactionConsistencyTimeout": 600, "CommitRate": 10000 }, "TTSettings" : { "EnableTT" : true, "TTS3Settings": { "EncryptionMode": "SSE_KMS", "ServerSideEncryptionKmsKeyId": "arn:aws:kms:us-west-2:112233445566:key/myKMSKey", "ServiceAccessRoleArn": "arn:aws:iam::112233445566:role/dms-tt-s3-access-role", "BucketName": "myttbucket", "BucketFolder": "myttfolder", "EnableDeletingFromS3OnTaskDelete": false }, "TTRecordSettings": { "EnableRawData" : true, "OperationsToLog": "DELETE,UPDATE", "MaxRecordSize": 64 } }, "Logging": { "EnableLogging": false }, "ControlTablesSettings": { "ControlSchema":"", "HistoryTimeslotInMinutes":5, "HistoryTableEnabled": false, "SuspendedTablesTableEnabled": false, "StatusTableEnabled": false }, "StreamBufferSettings": { "StreamBufferCount": 3, "StreamBufferSizeInMB": 8 }, "ChangeProcessingTuning": { "BatchApplyPreserveTransaction": true, "BatchApplyTimeoutMin": 1, "BatchApplyTimeoutMax": 30, "BatchApplyMemoryLimit": 500, "BatchSplitSize": 0, "MinTransactionSize": 1000, "CommitTimeout": 1, "MemoryLimitTotal": 1024, "MemoryKeepTime": 60, "StatementCacheSize": 50 }, "ChangeProcessingDdlHandlingPolicy": { "HandleSourceTableDropped": true, "HandleSourceTableTruncated": true, "HandleSourceTableAltered": true }, "LoopbackPreventionSettings": { "EnableLoopbackPrevention": true, "SourceSchema": "LOOP-DATA", "TargetSchema": "loop-data" }, "CharacterSetSettings": { "CharacterReplacements": [ { "SourceCharacterCodePoint": 35, "TargetCharacterCodePoint": 52 }, { "SourceCharacterCodePoint": 37, "TargetCharacterCodePoint": 103 } ], "CharacterSetSupport": { "CharacterSet": "UTF16_PlatformEndian", "ReplaceWithCharacterCodePoint": 0 } }, "BeforeImageSettings": { "EnableBeforeImage": false, "FieldName": "", "ColumnFilter": "pk-only" }, "ErrorBehavior": { "DataErrorPolicy": "LOG_ERROR", "DataTruncationErrorPolicy":"LOG_ERROR", "DataErrorEscalationPolicy":"SUSPEND_TABLE", "DataErrorEscalationCount": 50, "TableErrorPolicy":"SUSPEND_TABLE", "TableErrorEscalationPolicy":"STOP_TASK", "TableErrorEscalationCount": 50, "RecoverableErrorCount": 0, "RecoverableErrorInterval": 5, "RecoverableErrorThrottling": true, "RecoverableErrorThrottlingMax": 1800, "ApplyErrorDeletePolicy":"IGNORE_RECORD", "ApplyErrorInsertPolicy":"LOG_ERROR", "ApplyErrorUpdatePolicy":"LOG_ERROR", "ApplyErrorEscalationPolicy":"LOG_ERROR", "ApplyErrorEscalationCount": 0, "FullLoadIgnoreConflicts": true }, "ValidationSettings": { "EnableValidation": false, "ValidationMode": "ROW_LEVEL", "ThreadCount": 5, "PartitionSize": 10000, "FailureMaxCount": 1000, "RecordFailureDelayInMinutes": 5, "RecordSuspendDelayInMinutes": 30, "MaxKeyColumnSize": 8096, "TableFailureMaxCount": 10000, "ValidationOnly": false, "HandleCollationDiff": false, "RecordFailureDelayLimitInMinutes": 1, "SkipLobColumns": false, "ValidationPartialLobSize": 0, "ValidationQueryCdcDelaySeconds": 0 } }