本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
Time Travel 任务设置
要记录和调试复制任务,可以使用 T AWS DMS ime Travel。在此方法中,您可以使用 Amazon S3 来存储日志,并使用加密密钥对其进行加密。只有具有对您的 Time Travel S3 存储桶的访问权限,才能使用日期时间过滤器检索 S3 日志,然后根据需要查看、下载以及对日志进行模糊处理。由此,您可以安全地“回到过去”来调查数据库活动。Time Travel 的工作原理与 CloudWatch 日志记录无关。有关 CloudWatch 日志记录的更多信息,请参阅日志记录任务设置。
你可以在所有 AWS 区域使用支持的 Oracle、Microsoft SQL Server 和 Postgre SQL 源端点以及 AWS DMS支持的 Postgre 和 My 目标端点的 AWS DMS Time SQL Travel。SQL您只能为满载和更改数据捕获 (CDC) 任务以及仅限任务启用 Time CDC Travel。要打开 Time Travel 或修改任何现有的 Time Travel 设置,请确保您的复制任务已停止。
Time Travel 设置包括以下 TTSettings
属性:
-
EnableTT
– 如果此选项设置为true
,则会为任务开启 Time Travel 日志记录。默认值为false
。类型:布尔值
必需:否
-
EncryptionMode
– 您的 S3 存储桶上用于存储数据和日志的服务器端加密类型。您可以指定"SSE_S3"
(默认值)或"SSE_KMS"
。您可以将
EncryptionMode
从"SSE_KMS"
更改为"SSE_S3"
,但不能反向更改。类型:字符串
必需:否
-
ServerSideEncryptionKmsKeyId
— 如果您指定"SSE_KMS"
EncryptionMode
,请提供您的自定义托管 AWS KMS 密钥的 ID。确保您使用的密钥附有开启 AWS Identity and Access Management (IAM) 用户权限并允许使用该密钥的策略。该选项仅支持您自己的自定义管理的对称KMS密钥。
"SSE_KMS"
类型:字符串
必需:仅在
EncryptionMode
设置为"SSE_KMS"
时 -
ServiceAccessRoleArn
— 服务用于访问IAM角色的 Amazon 资源名称 (ARN)。将角色名称设置为dms-tt-s3-access-role
。这是一项必需设置, AWS DMS 允许从 S3 存储桶中写入和读取对象。类型:字符串
必需:如果已启用 Time Travel
下面是该角色的策略示例。
{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": [ "s3:PutObject", "kms:GenerateDataKey", "kms:Decrypt", "s3:ListBucket", "s3:DeleteObject" ], "Resource": [ "arn:aws:s3:::S3bucketName*", "arn:aws:kms:us-east-1:112233445566:key/1234a1a1-1m2m-1z2z-d1d2-12dmstt1234" ] } ] }
下面是该角色的信任策略示例。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": [ "dms.amazonaws.com" ] }, "Action": "sts:AssumeRole" } ] }
-
BucketName
– 用于存储 Time Travel 日志的 S3 存储桶的名称。请务必先创建此 S3 存储桶,然后再启用 Time Travel 日志。类型:字符串
必需:如果已启用 Time Travel
-
BucketFolder
– 一个可选参数,用于在 S3 桶中设置文件夹的名称。如果指定此参数,则会在路径中DMS创建时空旅行日志"/
。如果您未指定此参数,则 AWS DMS 会将默认路径创建为BucketName
/BucketFolder
/taskARN
/YYYY
/MM
/DD
/hh
""/
。BucketName
/dms-time-travel-logs/taskARN
/YYYY
/MM
/DD
/hh
类型:字符串
必需:否
-
EnableDeletingFromS3OnTaskDelete
— 当此选项设置为时true
,如果任务已 AWS DMS 删除,则会从 S3 中删除时空旅行日志。默认值为false
。类型:字符串
必需:否
-
EnableRawData
— 当此选项设置为时true
,时空旅行日志的数据操作语言 (DML) 原始数据将显示在 “时空旅行” 日志的raw_data
列下。有关详细信息,请参阅使用 Time Travel 日志。默认值为false
。当此选项设置为时false
,DML仅捕获的类型。类型:字符串
必需:否
-
RawDataFormat
— 在 3.5.0 及更高 AWS DMS 版本中,当设置EnableRawData
为。true
此属性为 Time Travel 日志DML中的原始数据指定了一种格式,可以表示为:"TEXT"
— 已解析、可读的列名和在 a CDC sRaw
字段期间捕获DML的事件的值。"HEX"
— 列名和期间为DML事件捕获的值的原始十六进制。CDC
此属性适用于 Oracle 和 Microsoft SQL 服务器数据库源。
类型:字符串
必需:否
-
OperationsToLog
— 指定登录时空旅行日志的DML操作类型。您可以指定以下几项之一:"INSERT"
"UPDATE"
"DELETE"
"COMMIT"
"ROLLBACK"
"ALL"
默认为
"ALL"
。类型:字符串
必需:否
-
MaxRecordSize
– 指定每行记录的 Time Travel 日志记录的最大大小。使用该属性可以控制极为繁忙表格的 Time Travel 日志的增长。默认值为 64 KB。类型:整数
必需:否
有关启用和使用 Time Travel 日志的更多信息,请参阅以下主题。