本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
甲骨文评估
本节介绍使用 Oracle 源端点的迁移任务的单独迁移前评估。
注意
要使用本节中的迁移前评估,您必须向 dms_user
添加下列权限:
grant select on gv_$parameter to dms_user; grant select on v_$instance to dms_user; grant select on v_$version to dms_user; grant select on gv_$ASM_DISKGROUP to dms_user; grant select on gv_$database to dms_user; grant select on DBA_DB_LINKS to to dms_user; grant select on gv_$log_History to dms_user; grant select on gv_$log to dms_user; grant select on dba_types to dms_user; grant select on dba_users to dms_user; grant select on dba_directories to dms_user;
有关将 Oracle 作为源时的权限的更多信息,请参阅 在自行管理的 Oracle 源上需要用户帐户权限 Amazon DMS。
主题
- 选中数据库级别补充日志记录
- 验证是否为备用数据库创建了所需的数据库链接
- Oracle 验证 LOB 数据类型以及是否已配置二进制读取器
- 验证数据库是否为 CDB
- 查看 Oracle 数据库版本
- DMS 验证 Oracle CDC 的方法
- DMS 验证 Oracle RAC 配置
- 验证 DMS 用户是否拥有目标权限
- 验证是否所有列都需要补充日志
- 验证是否对具有主键或唯一键的表启用了补充日志记录
- 验证是否有 SecureFile LOB 并且任务已配置为完整 LOB 模式
- 验证任务范围中包含的表中是否使用基于函数的索引。
- 验证是否正在对任务范围中包含的表使用全局临时表。
- 验证任务范围中包含的表上是否使用了按索引组织的带有溢出段的表。
- 验证任务范围中包含的表是否使用了多级嵌套表。
- 验证任务范围中包含的表上是否使用了不可见列。
- 验证任务范围中包含的表是否使用了基于 ROWID 列的实例化视图。
- 验证是否使用了 Active Data Guard DML 重定向功能。
- 验证是否使用混合分区表。
- 验证是否使用了仅限架构的 Oracle 帐户
- 验证是否使用了虚拟列
- 验证在任务作用域中定义的表名是否包含撇号。
- 验证任务作用域中定义的列是否具有XMLTypeLong、或Long Raw数据类型,并在任务设置中验证 LOB 模式配置。
- 验证源 Oracle 版本是否受支持 Amazon DMS。
- 验证目标 Oracle 版本是否受支持 Amazon DMS。
- 验证目标 Oracle 版本是否受支持 Amazon DMS。
- 验证 DMS 用户是否具有使用数据验证所需的权限。
- 验证 DMS 用户是否有权在 Oracle ASM 中使用二进制读取器
- 验证 DMS 用户是否有权在 Oracle 非 ASM 中使用二进制读取器
- 验证 DMS 用户是否有权使用带 CopyToTempFolder 方法的二进制读取器
- 验证 DMS 用户是否有权使用 Oracle 备用服务器作为来源
- 验证 DMS 源是否已连接到应用程序容器 PDB
- 验证表的任务范围中是否包含 XML 数据类型。
- 验证源数据库上是否启用了归档日志模式。
- 验证 RDS Oracle 的存档日志保留期。
- 验证表的任务范围中是否包含扩展数据类型。
- 验证任务范围中包含的对象名称的长度。
- 验证 DMS 源是否已连接到 Oracle PDB
- 验证表的任务范围中是否包含空间列。
- 验证 DMS 源是否已连接到 Oracle 备用服务器。
- 验证源数据库表空间是否使用 TDE 加密。
- 验证源数据库是否为 Oracle ASM
选中数据库级别补充日志记录
API 密钥:oracle-supplemental-db-level
此迁移前评估将验证是否在数据库级别启用了最低限度的补充日志记录。必须启用补充日志记录才能使用 Oracle 数据库作为迁移源。
要启用补充日志记录,使用以下查询:
ALTER DATABASE ADD SUPPLEMENTAL LOG DATA
有关更多信息,请参阅 设置补充日志记录。
此评估仅对完全加载迁移和 CDC 迁移或仅 CDC 迁移有效。此评估对仅完全加载迁移无效。
验证是否为备用数据库创建了所需的数据库链接
API 密钥:oracle-validate-standby-dblink
此迁移前评估将验证是否为 Oracle 备用数据库源创建 Dblink。 AWSDMS_DBLINK 是使用备用数据库作为源的先决条件。使用 Oracle Standby 作为源时,默认情况下 Amazon DMS 不验证未完成事务。
有关更多信息,请参阅 使用自行管理的 Oracle 数据库作为源 Amazon DMS。
此评估仅对完全加载迁移和 CDC 迁移或仅 CDC 迁移有效。此评估对仅完全加载迁移无效。
Oracle 验证 LOB 数据类型以及是否已配置二进制读取器
API 密钥:oracle-binary-lob-source-validation
此迁移前评估将验证 Oracle LogMiner 是否用于版本 12c 或更高版本的 Oracle 数据库终端节点。 Amazon DMS 不支持 Oracle LogMiner 从 Oracle 数据库版本 12c 迁移 LOB 列。该评估还会检查 LOB 列是否存在,并提供适当的建议。
要将您的迁移配置为不使用 Oracle LogMiner,请将以下配置添加到您的源终端节点:
useLogMinerReader=N;useBfile=Y;
有关更多信息,请参阅 在 CDC 中使用 Oracle LogMiner 或 Amazon DMS 二进制阅读器。
此评估仅对完全加载迁移和 CDC 迁移或仅 CDC 迁移有效。此评估对仅完全加载迁移无效。
验证数据库是否为 CDB
API 密钥:oracle-validate-cdb
此迁移前评估会验证数据库是否为容器数据库。 Amazon DMS 不支持多租户容器根数据库(CDB$ROOT)。
注意
只有 Oracle 版本 12.1.0.1 或更高版本需要进行此评估。此评估不适用于 12.1.0.1 之前的 Oracle 版本。
有关更多信息,请参阅 使用 Oracle 作为来源的限制 Amazon DMS。
此评估仅对完全加载迁移和 CDC 迁移或仅 CDC 迁移有效。此评估对仅完全加载迁移无效。
查看 Oracle 数据库版本
API 密钥:oracle-check-cdc-support-express-edition
此迁移前评估会验证 Oracle 源数据库是否为 Express Edition。对于 Oracle Express Edition(Oracle Database XE)版本 18.0 及更高版本, Amazon DMS 不支持 CDC。
此评估仅对完全加载迁移和 CDC 迁移或仅 CDC 迁移有效。此评估对仅完全加载迁移无效。
DMS 验证 Oracle CDC 的方法
API 密钥:oracle-recommendation-cdc-method
此迁移前评估验证了过去七天的重做日志生成,并建议是使用 Amazon DMS Binary Reader 还是 Oracle LogMiner for CDC。
此评估仅对完全加载迁移和 CDC 迁移或仅 CDC 迁移有效。此评估对仅完全加载迁移无效。
有关决定使用哪种 CDC 方法的更多信息,请参阅在 CDC 中使用 Oracle LogMiner 或 Amazon DMS 二进制阅读器。
DMS 验证 Oracle RAC 配置
API 密钥:oracle-check-rac
此迁移前评估会验证 Oracle 数据库是否为 Real Application Cluster。必须正确配置 Real Application Cluster 数据库。如果数据库基于 RAC,我们建议您使用适用于 CDC 的 Amazon DMS 二进制阅读器,而不是 Oracle LogMiner。
此评估仅对完全加载迁移和 CDC 迁移或仅 CDC 迁移有效。此评估对仅完全加载迁移无效。
有关更多信息,请参阅 在 CDC 中使用 Oracle LogMiner 或 Amazon DMS 二进制阅读器。
验证 DMS 用户是否拥有目标权限
API 密钥:oracle-validate-permissions-on-target
此迁移前评估将验证 DMS 用户是否拥有目标数据库的所有必需权限。
验证是否所有列都需要补充日志
API 密钥:oracle-validate-supplemental-logging-all-columns
对于任务范围中提到的表,此迁移前评估可以验证是否已向没有主键或唯一键的表的所有列添加了补充日志记录。如果不对缺少主键或唯一键的表的所有列进行补充日志,则重做日志中将无法显示数据 before-and-after 图像。DMS 需要对没有主键或唯一键的表进行补充日志才能生成 DML 语句。
验证是否对具有主键或唯一键的表启用了补充日志记录
API 密钥:oracle-validate-supplemental-logging-for-pk
此迁移前评估将验证是否为具有主键或唯一索引的表启用了补充日志记录,还会检查AddSupplementalLogging
是否在端点级别启用了补充日志记录。为确保 DMS 可以复制更改,您可以根据主键或唯一键在表级别上手动添加补充日志记录,也可以使用终端节点设置AddSupplementalLogging = true
,让 DMS 用户对任何复制的表拥有 ALTER 权限。
验证是否有 SecureFile LOB 并且任务已配置为完整 LOB 模式
API 密钥:oracle-validate-securefile-lobs
此迁移前评估检查任务范围内的表中是否存在 SecureFile LOB,并验证其 LOB 设置。需要注意的是,目前仅在 F SecureFile ULL LOB 模式下支持 LOB。考虑将 LOB 表分配给单独的任务以提高性能,因为在完整 LOB 模式下运行任务可能会导致性能降低。
验证任务范围中包含的表中是否使用基于函数的索引。
API 密钥:oracle-validate-function-based-indexes
此迁移前评估检查任务范围内的表上是否存在基于函数的索引。请注意, Amazon DMS 这不支持复制基于函数的索引。考虑在迁移目标数据库后创建索引。
验证是否正在对任务范围中包含的表使用全局临时表。
API 密钥:oracle-validate-global-temporary-tables
此迁移前评估检查任务表映射范围内是否使用了全局临时表。请注意, Amazon DMS 这不支持迁移或复制全局临时表。
验证任务范围中包含的表上是否使用了按索引组织的带有溢出段的表。
API 密钥:oracle-validate-iot-overflow-segments
验证任务范围中包含的表上是否使用了按索引组织的带有溢出段的表。 Amazon DMS 不支持 CDC 用于按索引组织的带有溢出段的表。
验证任务范围中包含的表是否使用了多级嵌套表。
API 密钥:oracle-validate-more-than-one-nesting-table-level
此迁移前评估检查任务范围上使用的嵌套表的嵌套级别。 Amazon DMS 仅支持一层表嵌套。
验证任务范围中包含的表上是否使用了不可见列。
API 密钥:oracle-validate-invisible-columns
此迁移前评估可验证任务范围中使用的表是否有不可见的列。 Amazon DMS 不会迁移源数据库中不可见列的数据。要迁移不可见的列,您需要将其修改为可见。
验证任务范围中包含的表是否使用了基于 ROWID 列的实例化视图。
API 密钥:oracle-validate-rowid-based-materialized-views
此迁移前评估可验证迁移中使用的实例化视图是否是基于 ROWID 列创建的。 Amazon DMS 不支持 ROWID 数据类型或基于 ROWID 列的实例化视图。
验证是否使用了 Active Data Guard DML 重定向功能。
API 密钥:oracle-validate-adg-redirect-dml
此迁移前评估可验证是否使用了 Active Data Guard DML 重定向功能。使用 Oracle 19.0 作为源代码时, Amazon DMS 不支持 Data Guard DML 重定向功能。
验证是否使用混合分区表。
API 密钥:oracle-validate-hybrid-partitioned-tables
此迁移前评估可验证混合分区表是否用于任务范围中定义的表。
验证是否使用了仅限架构的 Oracle 帐户
API 密钥:oracle-validate-schema-only-accounts
此迁移前评估可验证任务范围内是否存在仅限架构的帐户。
验证是否使用了虚拟列
API 密钥:oracle-validate-virtual-columns
此迁移前评估将验证 Oracle 实例在任务范围内的表中是否有虚拟列。
验证在任务作用域中定义的表名是否包含撇号。
API 密钥:oracle-validate-names-with-apostrophes
此迁移前评估可验证任务范围中使用的表是否包含撇号。 Amazon DMS 不会复制名称中包含撇号的表。如果确定了这些表,可以考虑重命名这些表。或者,您可以创建不带撇号的视图或实例化视图来加载这些表。
验证任务作用域中定义的列是否具有XMLType
Long
、或Long Raw
数据类型,并在任务设置中验证 LOB 模式配置。
API 密钥:oracle-validate-limited-lob-mode-for-longs
此迁移前评估将验证任务范围内定义的表是否具有数据类型XMLType
Long
Long Raw
、或,并检查任务设置是否配置为使用有限大小 LOB 模式。 Amazon DMS 不支持使用 FULL LOB 模式复制这些数据类型。在识别具有此类数据类型的表时,可以考虑将任务设置更改为使用有限大小 LOB 模式。
验证源 Oracle 版本是否受支持 Amazon DMS。
API 密钥:oracle-validate-supported-versions-of-source
此迁移前评估将验证源 Oracle 实例版本是否受支持。 Amazon DMS
验证目标 Oracle 版本是否受支持 Amazon DMS。
API 密钥:oracle-validate-supported-versions-of-target
此迁移前评估将验证目标 Oracle 实例版本是否受支持。 Amazon DMS
验证目标 Oracle 版本是否受支持 Amazon DMS。
API 密钥:oracle-validate-supported-versions-of-target
此迁移前评估将验证目标 Oracle 实例版本是否受支持。 Amazon DMS
验证 DMS 用户是否具有使用数据验证所需的权限。
API 密钥:oracle-prerequisites-privileges-of-validation-feature
此迁移前评估将验证 DMS 用户是否具有使用 DMS 数据验证的必要权限。如果您不打算使用数据验证,则可以忽略启用此验证。
验证 DMS 用户是否有权在 Oracle ASM 中使用二进制读取器
API 密钥:oracle-prerequisites-privileges-of-binary-reader-asm
此迁移前评估将验证 DMS 用户是否具有在 Oracle ASM 实例上使用 Binary Reader 的必要权限。如果您的来源不是 Oracle ASM 实例,或者您没有使用适用于 CDC 的二进制阅读器,则可以忽略启用此评估。
验证 DMS 用户是否有权在 Oracle 非 ASM 中使用二进制读取器
API 密钥:oracle-prerequisites-privileges-of-binary-reader-non-asm
此迁移前评估将验证 DMS 用户是否具有在 Oracle 非 ASM 实例上使用 Binary Reader 的必要权限。只有当您拥有 Oracle 非 ASM 实例时,此评估才有效。
验证 DMS 用户是否有权使用带 CopyToTempFolder 方法的二进制读取器
API 密钥:oracle-prerequisites-privileges-of-binary-reader-copy-to-temp-folder
此迁移前评估将验证 DMS 用户是否具有使用 “复制到临时文件夹” 方法的 Binary Reader 所需的权限。只有当您计划在使用二进制读取器时使用 CopyToTempFolder 读取 CDC 更改并且将 ASM 实例连接到源代码时,此评估才有意义。如果您不打算使用该 CopyToTempFolder 功能,则可以忽略启用此评估。
我们建议不要使用该 CopyToTempFolder 功能,因为它已被弃用。
验证 DMS 用户是否有权使用 Oracle 备用服务器作为来源
API 密钥:oracle-prerequisites-privileges-of-standby-as-source
此迁移前评估将验证 DMS 用户是否具有使用 StandBy Oracle 实例作为源的必要权限。如果您不打算使用 StandBy Oracle 实例作为来源,则可以忽略启用此评估。
验证 DMS 源是否已连接到应用程序容器 PDB
API 密钥:oracle-check-app-pdb
此迁移前评估可验证 DMS 源是否已连接到应用程序容器 PDB。DMS 不支持从应用程序容器 PDB 进行复制。
验证表的任务范围中是否包含 XML 数据类型。
API 密钥:oracle-check-xml-columns
此迁移前评估可验证任务范围内使用的表是否具有 XML 数据类型。当表包含 XML 数据类型时,它还会检查任务是否配置为受限 LOB 模式。DMS 仅支持有限的 LOB 模式来迁移 Oracle XML 列。
验证源数据库上是否启用了归档日志模式。
API 密钥:oracle-check-archivelog-mode
此迁移前评估可验证源数据库上是否启用了归档日志模式。DMS 需要在源数据库上启用存档日志模式才能复制更改。
验证 RDS Oracle 的存档日志保留期。
API 密钥:oracle-check-archivelog-retention-rds
此迁移前评估将验证您的 RDS Oracle 数据库上的归档日志保留期是否配置为至少 24 小时。
验证表的任务范围中是否包含扩展数据类型。
API 密钥:oracle-check-extended-columns
此迁移前评估可验证任务范围内使用的表是否具有扩展的数据类型。请注意,只有 DMS 版本 3.5 及更高版本支持扩展数据类型。
验证任务范围中包含的对象名称的长度。
API 密钥:oracle-check-object-30-bytes-limit
此迁移前评估可验证对象名称的长度是否超过 30 字节。DMS 不支持长对象名(超过 30 字节)。
验证 DMS 源是否已连接到 Oracle PDB
API 密钥:oracle-check-pdb-enabled
此迁移前评估可验证 DMS 源是否已连接到 PDB。仅当使用以 Oracle PDB 作为源的二进制读取器时,DMS 才支持 CDC。评估还会评估任务是否配置为在 DMS 连接到 Oracle PDB 时使用二进制读取器。
验证表的任务范围中是否包含空间列。
API 密钥:oracle-check-spatial-columns
此迁移前评估可验证表的任务范围中是否包含空间列。DMS 仅支持使用完整 LOB 模式的空间数据类型。评估还会评估 DMS 识别空间列时任务是否配置为使用 Full LOB 模式。
验证 DMS 源是否已连接到 Oracle 备用服务器。
API 密钥:oracle-check-standby-db
此迁移前评估可验证源是否已连接到 Oracle 备用服务器。仅当使用以 Oracle 待机为源的二进制读取器时,DMS 才支持 CDC。评估还会评估任务是否配置为在 DMS 连接到 Oracle 待机时使用二进制读取器。
验证源数据库表空间是否使用 TDE 加密。
API 密钥:oracle-check-tde-enabled
此迁移前评估将验证源是否在表空间上启用了 TDE 加密。使用 Oracle for RDS Oracle 时,DMS 仅支持加密表空间 LogMiner 的 TDE。
验证源数据库是否为 Oracle ASM
API 密钥:oracle-check-asm
此迁移前评估可验证源是否使用 ASM。为了提高 ASM 配置的性能,请考虑在源端点设置中添加parallelASMReadThreads
和readAheadBlocks
。