Time Travel 任务设置 - Amazon 数据库迁移服务
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

Time Travel 任务设置

要记录和调试复制任务,可以使用 T Amazon DMS ime Travel。在此方法中,您可以使用 Amazon S3 来存储日志,并使用加密密钥对其进行加密。只有具有对您的 Time Travel S3 存储桶的访问权限,才能使用日期时间过滤器检索 S3 日志,然后根据需要查看、下载以及对日志进行模糊处理。由此,您可以安全地“回到过去”来调查数据库活动。Time Travel 的工作原理与 CloudWatch 日志记录无关。有关 CloudWatch 日志记录的更多信息,请参阅日志记录任务设置

你可以在所有 Amazon 区域使用支持的 Oracle、Microsoft SQL Server 和 PostgreSQL 源端点以及 Amazon DMS支持的 PostgreSQL 和 MySQL 目标端点的 Time Travel。 Amazon DMS只能为完全加载和更改数据捕获(CDC)任务以及仅 CDC 的任务启用 Time 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,请提供您的自定义托管 Amazon KMS 密钥的 ID。确保您使用的密钥具有启用 Amazon Identity and Access Management (IAM) 用户权限并允许使用该密钥的附加策略。

    "SSE_KMS" 选项仅支持您自己的自定义托管对称 KMS 密钥。

    类型:字符串

    必需:仅在 EncryptionMode 设置为 "SSE_KMS"

  • ServiceAccessRoleArn – 服务用于访问 IAM 角色的 Amazon 资源名称(ARN)。将角色名称设置为 dms-tt-s3-access-role。这是一项必需设置, Amazon 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 将在路径 "/BucketName/BucketFolder/taskARN/YYYY/MM/DD/hh" 中创建 Time Travel 日志。如果您未指定此参数,则 Amazon DMS 会将默认路径创建为"/BucketName/dms-time-travel-logs/taskARN/YYYY/MM/DD/hh

    类型:字符串

    必需:否

  • EnableDeletingFromS3OnTaskDelete— 当此选项设置为时true,如果任务已 Amazon DMS 删除,则会从 S3 中删除时空旅行日志。默认值为 false

    类型:字符串

    必需:否

  • EnableRawData – 当该选项设置为 true 时,Time Travel 日志的数据操作语言(DML)原始数据将显示在 Time Travel 日志的 raw_data 列下。有关详细信息,请参阅使用 Time Travel 日志。默认值为 false。当该选项设置为 false 时,仅捕获 DML 的类型。

    类型:字符串

    必需:否

  • RawDataFormat— 在 3.5.0 及更高 Amazon DMS 版本中,当设置EnableRawData为。true该属性为 Time Travel 日志中 DML 的原始数据指定了一种格式,可以表示为:

    • "TEXT" – CDC 期间捕获的 DML 事件的已解析、可读的列名和值作为 Raw 字段。

    • "HEX" – CDC 期间为 DML 事件捕获的列名和值的原始十六进制值。

    该属性适用于 Oracle 和 Microsoft SQL Server 数据库源。

    类型:字符串

    必需:否

  • OperationsToLog – 指定要登录 Time Travel 日志的 DML 操作的类型。您可以指定以下几项之一:

    • "INSERT"

    • "UPDATE"

    • "DELETE"

    • "COMMIT"

    • "ROLLBACK"

    • "ALL"

    默认值为 "ALL"

    类型:字符串

    必需:否

  • MaxRecordSize – 指定每行记录的 Time Travel 日志记录的最大大小。使用该属性可以控制极为繁忙表格的 Time Travel 日志的增长。默认值为 64 KB。

    类型:整数

    必需:否

有关启用和使用 Time Travel 日志的更多信息,请参阅以下主题。