通过我的应用经验,简单描述:
1.和厂家沟通,拿到函数对比分析,确定需要改动的语法(递归,游标循环等)
2.确定存储过程模板,主要是异常捕捉,日志等用于调试的部分
3.开发小工具,直接对存储过程进行转换,函数部分进行替换,从oracle模板转换到xx模板,进行部署测试,迭代程序,达到尽可能多的部署不报错
4.人工测试
存储过程是个大问题。国产集中式数据库,达梦对存储过程支持的比较好,存储过程多的小系统,我说的是交易并发量低的小系统,可以选达梦。
但是,对于交易并发高的系统,比如用GoldenDB或TDSQL这类基于MySQL的分布式数据库,存储过程的改造就比较难。尤其是对于多分片模式,或者叫分布式模式,对存储过程支持的不好,需要研发人员对存储过程进行改造。几个存储过程还行,但是用到存储过程的系统,往往都有几十个乃至上百个,改存储过程需要研发人员投入一定的时间和精力。。。。
针对Oracle迁移到国产数据库存储过程的迁移,需要进行以下步骤:
另外,应用侧需要改造的工作量主要体现在以下方面:
总的来说,Oracle迁移到国产数据库存储过程需要进行一定的重写工作,但是通过合适的工具和方法,可以大大减少工作量和风险。同时,应用侧的改造工作也需要认真评估和规划,确保迁移后能够正常运行。