
点击蓝字关注我们
由于Postgres具有丰富的功能、高质量和强大的开发社区,因此经常被选为从Oracle迁移的目标数据库。EDB提供的PostgreSQL发行版--EDB Postgres Advanced Server,内置了对Oracle的兼容性,以及一套迁移工具和服务,专门用于帮助企业更轻松地从Oracle迁移,并减少对业务的影响。
概括地说,从 Oracle 到 Postgres 的数据库迁移包括:
将架构从 Oracle 的 SQL 标准扩展版本转换为 Postgres 兼容版本,后者通常更符合标准
将 Oracle 特定的数据类型定义转换为 Postgres 特定的数据类型定义
重写查询和存储过程
复制数据
更新应用程序 API 以使用 Postgres JDBC、.NET、ODBC 驱动程序,因为 Oracle 通过专有扩展扩展了标准协议
验证迁移的数据库是否满足与性能、可管理性、高可用性以及与企业安全要求集成相关的所有非功能性要求
迁移是个复杂的工程,大致可以分为几个步骤:

本文不做全面的过程讨论,从技术上只做了通过EDB的Migration Tookit工具做迁移的测试。全面的迁移过程后续再做介绍。
一、EDB Migration Toolkit工具
Migration Toolkit是EDB将Oracle Database迁移到EPAS的工具之一,是一个功能强大的命令行工具,可对迁移过程进行精细控制。使用迁移工具包分为两个步骤:
编辑toolkit.properties文件以指定源数据库和目标数据库。
在命令行调用Migration Toolkit,指定迁移选项。
二、EDB Migration Toolkit优点
提高迁移效率:Migration Toolkit通过自动化迁移流程,显著提高了数据迁移和系统升级的效率。它减少手动操作的需要,缩短了迁移周期降低了人力成本。
确保数据完整性:在迁移过程中Migration Toolkit能够确保数据的完整性和一致性。它支持数据类型映射和转换,避免了因数据类型不兼容导致的数据丢失或错误。同时它还提供了数据验证功能,确保迁移后的数据与源数据一致。
降低迁移风险:Migration Toolkit通过提供详细的迁移计划和步骤,以及错误处理和报告机制,降低了迁移过程中的风险。它可以帮助用户提前识别潜在的问题,并提供解决方案,从而避免迁移失败或数据损坏等风险。
简化迁移过程:Migration Toolkit通常具有直观的图形用户界面(GUI)使得非技术背景的用户也能轻松操作。它简化了迁移过程的复杂性降低了对技术人员的依赖,使得迁移工作更加容易上手和完成。
支持多种迁移场景:Migration Toolkit通常支持多种迁移场景,包括数据库迁移、文件迁移、应用程序迁移等。它可以根据不同的迁移需求,提供定制化的迁移解决方案,满足用户的多样化需求。
提供灵活性和可定制性:Migration Toolkit允许用户根据自己的具体需求调整迁移选项和策略。用户可以选择保留原有的主键、外键约束,调整字符集设置等,以满足目标环境的特定要求。
三、Oracle 19C迁移到EDB EPAS的步骤
需求分析:分析源数据库(Oracle 19C)和目标数据库(EPAS)之间的兼容性,包括数据类型、SQL语法、存储过程、函数、触发器等的差异。
迁移方案制定:根据需求分析结果,制定详细的迁移方案包括迁移策略、时间规划、资源分配等。
备份源数据库:在进行任何迁移操作之前务必对源数据库进行完整备份,以防数据丢失或迁移失败。
安装EPAS:在目标服务器上安装EDB数据库系统,并配置好网络、存储等基础设施。
创建目标数据库:在EPAS中创建与源数据库相对应的目标数据库实例,包括必要的用户、角色、权限等。
使用选定的迁移工具连接源数据库和目标数据库。
配置迁移选项如迁移对象(表、视图、存储过程等)、迁移数据的方式(全量迁移、增量迁移等)。
执行迁移操作并监控迁移过程中的日志和性能指标。
四、安装Oracle preinstall包
dnf install -y oracle-database-preinstall-19c-1.0-0.5.el8.x86_64.rpm


五、安装Oracle数据库
dnf install -y oracle-database-free-19c-1.0-1.el8.x86_64.rpm

六、安装edb-migration toolkit


七、添加环境变量

八、初始化Oracle数据库
/etc/init.d/oracle-free-19c configure

九、安装EDB-JDBC


十、配置connection properities文件

十一、迁移故障处理
解决办法从Oracle官网下载ojdbc10.jar,然后放在目录/usr/edb/migrationtoolkit/lib下。然后再次运行sudo /usr/edb/migrationtoolkit/bin/runMTK.sh orcl





从Oracle 19C迁移到EDB EPAS(V16.4)四张表BONUS,DEPT,EMP,SALGRADE均成功。
十二、查询Oracle数据库表和数据

十三、检查EDB数据库迁移后表和数据

十四、迁移后验证
数据验证
对比源数据库和目标数据库中的数据,确保数据的完整性和一致性。
检查特殊样本数据确认在新旧数据库中是否一致。
功能验证
测试迁移后的数据库在目标系统上的运行情况,包括应用程序的连接、查询、事务处理等。
确认所有必要的数据库对象和特性(如触发器、存储过程、函数等)都已正确迁移并能在目标数据库中正常工作。
性能优化
根据实际情况对目标数据库进行性能调优,以确保迁移后的系统能够满足业务需求。
未完待续

发现“分享”和“赞”了吗,戳我看看吧




