oracle数据库内容替换,国产数据库能否替换oracle数据库?

国产数据库能不能替换oracle?能,但是困难一定很多。没有什么数据库是无法替代的,只是替代的代价到底有多高。迁移替代需要考虑很多方面:

1 性能

首先是性能有没有oracle好。其实是大部分国产数据库都不一定比得过oracle,但也不是天差地别。单纯的简单sql应该相差不大,复杂的sql经过优化拆解,也能变成简单sql。

国产分三种,自研内核,基于pg内核改造,或者是在mysql基础上改造。我测了很多数据库,现在拿openGauss作为迁移对象。这个数据库能够支撑混合负载类型,性能不差oracle多少。

2 兼容性和迁移方式

这个可能是代价最高的地方。向存储过程,内部函数什么的,几遍国产数据库做的再好,也不可能100%完全兼容oracle语法。所以对于需要迁移的oracle,如何迁移数据库对象,如何将原有的存储过程改写到程序里面去。

对象迁移都还好说,厂商也会有些工具来帮助迁移。数据迁移也会有各种办法,无论是否落地。但是这些都是很繁琐的工作,也很容易出错。反正加点投入还是能做到的。

3 数据同步

保险起见,迁移之后有可能需要并行运行一段时间,其中oracle和新的数据库需要有实时同步数据的方式,这个当前也是需要工具支持的。不同的数据库有不同的工具,这个具体好不好用不太好说。数据同步还能当做短暂停机切服务的迁移方式来用。

4 架构和稳定性

oracle的架构和稳定性已经很成熟了。 而现在的国产数据库架构也和oracle差不多,都是双机,HA,物理日志同步等方式。架构上应该差别不大。但是稳定性肯定存在不确定性。

所以新的国产数据库,一定要在高可用保护上多做文章,尽可能多冗余,自动化切换方案等方式要做好,争取面对突发问题的时候有快速的解决方案。

5 分布式

现在分布式数据库也大行其道。通过资源横向扩展,数据分片等方式,既满足了性能扩展需求,也减少了单点故障的影响。部分高负载的oracle数据库,考虑迁移到分布式的国产数据库环境也算是个方案。

国产数据库替代已经是个不得不面对的事情,所以下定决心去o,总是能办到的。收起

你可能感兴趣的:(oracle数据库内容替换)