Ora2Pg v23.0 发布

由 MigOps 发布于 2021-11-16
相关开源

法国格勒诺布尔 - 2021年11月15日

Ora2Pg 23.0 发布

Ora2Pg 23.0 版本已正式发布,可公开下载。Ora2Pg 是一个免费且可靠的工具,用于将 Oracle 数据库迁移到 PostgreSQL。

此版本修复了自上次发布以来报告的几个问题,并添加了几个新功能和改进。

新功能和改进

  • 添加数据验证功能,该功能包括比较从指向源 Oracle 表的外部表检索的数据和从数据导出产生的本地 PostgreSQL 表的数据。
  • 添加使用 encode() 替换 UTL_RAW.CAST_TO_RAW 的功能。
  • 添加使用 xmlparse(DOCUMENT convert_from(..., 'utf-8')) 重写 XMLTYPE() 的功能。
  • 添加 XML 函数检测,用于迁移评估成本。
  • 将 DBMS_RANDOM 添加到 Orafce 处理的 Oracleism 列表中。
  • 添加对 mysql_fdw 外部数据包装器的支持,以导出 PostgreSQL 表的数据。
  • 允许通过在 DATA_TYPE 配置指令中重新定义(如 NUMBER(*,2):decimal)将所有 NUMBER(*,scale) 转换为其他数据类型。
  • 在文档中添加有关如何使用 SSL 加密连接的信息。
  • 添加 TEST_COUNT 操作,仅报告 Oracle 和 PostgreSQL 表之间的行数差异。
  • 允许为 TEST_DATA 操作使用多进程来验证数据迁移。 使用 -P 或 PARALLEL_TABLES 设置要检查的并行表的数量。

新的命令行选项

  • 添加新的选项 --blob_to_lo,该选项可用于将 BLOB 导出为大对象。 与 TABLE 操作一起使用时,BLOB 列将转换为 oid PostgreSQL 数据类型。 当与 INSERT 导出操作一起使用时,BLOB 数据将作为大对象存储在 pg_largeobjects 表中,并且引用此大对象的 oid 将存储在主表中,而不是 bytea。
  • 添加命令行选项 -W | --where clause 以设置要应用于 Oracle 查询以检索数据的 WHERE 子句。 可以多次使用。 它将覆盖 WHERE 配置指令。

新的配置指令

  • 添加 DATA_VALIDATION_ORDERING 配置指令,默认启用。 一旦数据被修改,两侧的行顺序就会不同。 在这种情况下,必须使用主键或唯一索引对数据进行排序,这意味着没有此类对象的表无法进行比较。 如果在单进程模式下,且没有任何数据修改的情况下,数据导入后立即进行验证,则可以在没有任何排序的情况下对所有表进行验证。
  • 添加 DATA_VALIDATION_ERROR,以便在出现一定数量的行不匹配后停止验证表的数据。 默认值是在 10 行验证错误后停止。
  • 添加 VARCHAR_TO_TEXT 配置指令。 默认情况下,没有大小约束的 VARCHAR2 被转换为 text PG 数据类型。 如果要使用 varchar,请禁用此指令。

向后兼容性更改

  • 添加 FORCE_PLSQL_ENCODING 配置指令。 在之前的版本中,Ora2Pg 将所有函数代码编码为 ut8,现在不再这样了,因为它可能导致双重编码。 要恢复旧的行为(不推荐),请启用此指令。
  • 更改有关 RAW 列的行为。 现在,RAW(16) 和 RAW(32) 列或默认值为“SYS_GUID()”的 RAW 列现在会自动转换为 uuid。 数据将自动迁移为“uuid-ossp”扩展提供的 PostgreSQL uuid 数据类型。

有关完整的更改列表,请参阅 https://github.com/darold/ora2pg/blob/master/changelog

感谢所有贡献者,他们都在变更日志文件中被引用。

链接 & 鸣谢

我要感谢所有提交补丁的用户以及报告错误和功能请求的用户,他们都在 ChangeLog 文件中被引用。

Ora2Pg 是一个开放项目。 欢迎任何为构建更好的工具所做的贡献。 您只需使用 GitHub 工具或直接发送电子邮件至 ora2pg@darold.net 发送您的想法、功能请求或补丁。

链接


关于 Ora2Pg :

Ora2Pg 是一个简单可靠的工具,用于从 Oracle 迁移到 PostgreSQL。 它自 2001 年以来一直在开发,可以将大多数 Oracle 对象和数据导出到与 PostgreSQL 兼容的代码中。

Ora2Pg 在任何平台上都适用,并且在 GPL v3 许可下可用。

文档、下载和支持请访问 http://www.ora2pg.com/