凡尔赛,不存在!欢迎欣赏客户发我感谢信的迁移案例
数据库升级迁移,是一项涉及面广、复杂繁琐的工作,可以带来很大的收益,但同样面临很多的问题及风险。
以下罗列了一些迁移数据库的经典案例分享给大家
1.19C非容器整合PDB迁移
如何将X86操作系统19.3迁移至Exadata 19.24,并转为PDB呢?
本案例是将一套19.3.0.0的RAC集群异机迁移到19.24.0.0的一体机,采用的升级方式是先通过Dataguard+failover方式将数据库实时复制到异机的新环境Exadata,并在异机的新环境上通过Autoupgrade的方式将NO CDB转换为CDB。
1.recovery standby中断了怎那么办呢?
ecover standby database from service prod_pd;2.ADG正式切换的时候,进行startup的时候会报,
部分恢复不一致的情况,备库无法open?
通过service name可以同步备库数据,
对于丢失归档、少量差异甚至全库重新初始化都比较方便
alter database recover managed standby database until consistent;
3.如何快速实现转PDB(4.5T耗费时间2H)
$ java -jar autoupgrade.jar -config config.cfg -mode analyze
$ java -jar autoupgrade.jar -config config.cfg -mode deploy
2.HPUNIX 10G迁移到一体机19C
HPUNIX操作系统10.2.0.4迁移至ODA一体机 19.24
本案例是将一套10.2.0.4的RAC集群异机迁移到19.24.0.0的ODA一体机,客户之前存在硬件老化无法更换,业务卡顿的问题,本次迁移也是利用应用改造的期间,停机8个小时,使用数据泵dump的方式进行迁移升级(job、存储过程复杂)
1.低版本客户端的兼容问题?19C数据库默认不支持11G客户端访问也不支持121客户端访问,
可以通过修改SOLNET.ORA设值相关参数后方可连接,ORA-28040
SOLNET.ALLOWED LOGON VERSION SERVER=8
2.升级19c后,通过dblink连接本地和远程主表上的物化
视图刷新时间较慢,或者无法使用物化视图?
请删除并使用包含的用户名和密码重新创建公共DB链接
3.密码版本兼容问题?
升级后用户密码版本会有变化,导致有些应用无法连接,
PASSWORD VERSIONS记录密码的版本
select dbms_metadata.get_ddl('USER', u.username) AS ddl
from dba_users;重建密码即可
4.JDBC版本兼容问题?
JDBC版本不匹配会导致应用连接报错/不稳定,
需要使用和数据库版本匹配的ojdbc和idk版本
5.WM_CONCAT函数?
12c之后已不支持该函数(行列转换函数,替代函数LISTAGG)
3.HPUNIX 12C迁移至X86小机19C
本案例是将一套HPUNIX操作系统12C的RAC集群异机迁移到19.24.0.0的X86小机上,12C的版本BUG非常多,造成应用的卡顿、频繁DOWN机,数据量20T核心MES,使用XTTS迁移方式进行迁移升级,前后经过6次测试!
如果你的数据量很大,迁移停机教短吗,那么就要选择XTTS了,通过XTTS快捷、高效、平稳、安全的将Oracle数据库“小型机+集中式存储”环境迁移至“X86架构平台+分布式存储”已然成为一大神技!
4.IBM AIX系统11G迁移至X86小机
本案例是将一套IBM AIX操作系统11.2.0.4的RAC集群异机迁移到19.24.0.0的X86小机上,客户只提供20分钟的停机时间,数据量2T,使用OGG迁移方式进行迁移升级!
1.打开Supplemental log注意什么?
如果生产环境中有大量的业务在运行,这条语句一发出,会被锁住,
视业务的低峰期而定,再去执行2.Trandata的重要性
OGG凭什么来定位数据变更以及追加,就是靠Trandata
trandata schema千万不要在业务期间做,应该add trandata schema.table,为了确保不被遗漏,通过数据字典dba_log_groups确认
3.数据初始化应该注意什么?
避开备份任务,单个表的容量过大,记得开并行
减少传输时间,通过挂共享存储的方式
undo_retention的值大小设定在 >= 导出的时间
需要保障undo tablespace的大小
4.flaskback scn极容易被忽略的?
当前系统是还是正在有长事务发生,你忽略掉这个长事务而直接取
出生产库上当前的flaskback scn,
那么该长事务可能会影响会你后续相关的数据完整性
5.Job、trigger、foreign key?
防止重复地跑一遍而将数据跑乱,全部禁用
5.迁移Oracle到openGauss
从Oracle迁移到openGauss不仅仅是按下一个开关这么简单。这是一个包含一系列步骤的旅程,例如架构转换、数据迁移、应用程序迁移和性能调优。每个阶段都有自己的问题,我需要一个解决方案的工具箱来处理它们。
6.迁移Oracle到PostgreSQL
如何实现了OGG实现Oracle19C到postgreSQL14的迁移呢?我们可以用OGG!
总结
作为一名大型国企的Oracle DBA,我花了数年时间掌握Oracle数据库。随着目前信创产业的发展,部分项目的需求,随时要从一个经验丰富的Oracle DBA转变为国产数据库领域的新人。在经历了这些迁移之后,我觉得有必要分享我在此过程中获得的见解。
最后期待大家来听我的直播,每周5定期的会分享干货,一起交流!