已知限制

将 Oracle 数据库用作来源的已知限制包括:

  • Database Migration Service 仅支持为目标数据库设置 UTF8 编码。不支持架构和表名称包含 UTF8 编码集所不含的字符。
  • 不支持表格列名称包含字母数字字符或下划线 (_) 以外的字符。
  • 迁移作业最多只能包含 10,000 个表。
  • Database Migration Service 支持 Oracle 多租户架构 (CDB/PDB),但您只能在一个迁移作业中迁移一个可插入数据库。
  • 不支持 Oracle 自治数据库。
  • 行的大小限制为 100 MB。系统不会迁移超出 100 MB 限制的行,并且这些行会在迁移作业中显示为错误。
  • 不支持索引整理表 (IOT)。
  • 全局临时表需要在目标位置安装并创建 pgtt PostgreSQL 扩展程序。
  • 对于 BFILE 类型的列,只会复制文件路径。不复制文件的内容。
  • 不支持 ANYDATAINTERVAL DAY TO SECONDINTERVAL YEAR TO MONTHLONG/LONG RAWNCLOBSDO_GEOMETRYUDTUROWIDXMLTYPE 数据类型的列,这些列会替换为 NULL 值。
  • 不支持 DATEDATETIMETIMESTAMP 数据类型中的零日期。零日期会替换为 NULL 值。
  • 对于 Oracle 11g,不支持列的数据类型为 ANYDATAUDT 的表,并且不会复制整个表。
  • 不复制 Oracle 标签安全 (OLS)。
  • 使用 dbms_jobdbms_scheduler 安排的作业不会迁移。
  • 系统会迁移具体化视图定义,但不会迁移其具体化数据。迁移完成后,刷新物化视图,以便使用迁移的表中的数据填充这些视图。
  • 序列会被迁移,但在迁移完成之前,源数据库中的值可能会继续递增。迁移完成后,请更新目标实例上的序列值,使其与源数据库中的序列值保持一致。
  • Database Migration Service 不支持架构更改。对于架构更改,请根据新架构更新转换工作区,然后更新相关的迁移作业。
  • 目标中的所有表都应具有主键。如果源中某个表没有主键,则应使用迁移没有主键的表中的某个选项创建主键。
  • 目标数据库的名称必须与用于连接到数据库的用户名相同。
  • Database Migration Service 支持以下 Oracle 数据库字符集编码:
    • AL16UTF16
    • AL32UTF8
    • IN8ISCII
    • JA16SJIS
    • US7ASCII
    • UTF8
    • WE8ISO8859P1
    • WE8ISO8859P9
    • WE8ISO8859P15
    • WE8MSWIN1252
    • ZHT16BIG5
  • Database Migration Service 不支持在 Oracle Real Application Clusters (RAC) 环境中使用单个客户端访问名称 (SCAN) 功能直接连接到数据库。如需了解可能的解决方案,请参阅调试连接

配额

  • 在任何给定时间,最多可以存在 2000 个连接配置文件和 1000 个迁移作业。如需为更多任务腾出空间,可以删除一些迁移作业(包括已完成的作业)和连接配置文件。