oracle-kes通过oracle Rman不完全恢复方式创建中间库实现不停机迁移
一、基于Rman的不停机迁移和基于数据泵的不停机迁移方案比较
oracle-kes不停机迁移的现有方案是,通过oracle数据泵(expdp/impdp)指定scn备份,再将备份还原到oracle中间库,目标端KES使用KDTS工具从oracle中间库迁移存量数据,之后使用KFS从oracle源端的指定scn开始解析,进行无缝的增量同步,从而实现oracle-kes的不停机迁移。
该方案优点:
1、操作简单,可以实现部分用户或模式的备份还原
2、在存量数据比较小(数据量小于1T)的时候,指定scn备份还原中间库不会存在问题。
该方案缺点:
1、在数据存大的情况下(数据量大于1T),比如气象局卫星中心,存量数据6T,在使用数据泵从指定scn备份时,很容易出现ora-01555的错误。出现该错误的原因在于,oracle存量数据量大,备份时间长,很容易导致undo表空间的数据被覆盖掉,即使配置了足够大的undo表空间和足够长的undo_retention的撤销保证时间。可以通过配置undo表空间gurantee保证数据不被覆盖,但这可能会对业务运行造成影响。
2、即使配置了gurantee,如果表里面有大对象,仍然会出现大对象被覆盖而导致的ora-01555的错误。
使用Rman方式实施不停机迁移,就是将上述方案中,备份还原到中间库的这一步骤从数据泵(expdp/impdp)替换为rman的异机不完全恢复。
3、备份还原速度慢
此方案优点:
1、备份数据文件和归档,不会使用到undo表空间,大数据量也不会产生ora-01555的错误。
2、不用指定scn备份,只要在恢复时,查询一下rman中所备份归档日志的scn号,即可实现基于scn的不完全恢复。
3、备份还原速度快。
此方案缺点:
1、操作复杂
2、只能整库备份还原,不能实现单用户、单表的备份还原。
二、基于Rman不停机迁移的操作步骤