版权声明:本文为原创文章,转载请标明出处。 https://blog.csdn.net/zwjzqqb/article/details/81170501
简单说明:
本篇博文模拟OGG重新初始化同步目标端数据,启动应用进程的操作,只介绍大体步骤
重新初始化OGG复制的步骤:
1° 目标端停掉应用进程
2° 目标库删除被复制的SCOTT用户
3° 源库查询出当前SCN
4° 源端抽取和发送进程保持正常启动状态
5° 源端创建directory,使用数据泵基于FLASHBACK_SCN导出SCOTT
6° 目标端创建directory,使用数据泵将源端导出的SCOTT数据装入
7° 目标端基于SCN启动应用进程:
START REPLICAT RGGTEST1, AFTERCSN XXX
8° 可选:源端抽取和发送进程可以基于时间戳重启:
STOP EXTRACT EGGTEST1
ALTER EXTRACT EGGTEST1, BEGIN 2013-02-26 15:50:02
START EXTRACT EGGTEST1
STOP EXTRACT PGGTEST1
ALTER EXTRACT PGGTEST1, BEGIN 2013-02-26 15:50:02
START EXTRACT PGGTEST1
这个时间戳是源端查询SCN之时的时间戳
要保证数据泵基于SCN导出之时抽取和发送进程正常启动
或者数据泵初始化数据之后,基于该时间戳重新启动抽取和发送进程
基于时间戳重启抽取和发送进程,相应的redo或者归档必须存在
9° 注意:基于SCN的数据泵导出数据时候,如果源端库事务繁忙,需要较大的undo
如果泵出的数据太大,undo不够用,则可能泵出操作失败, 解决方法有以下两种:
1,使用RMAN备份然后基于SCN在目标端恢复
如果需要恢复的是库的某一个用户,则将RMAN备份在中间库恢复,然后泵出该用户装入目标库
2,使用数据泵忽略历史表或者分区表的历史分区进行泵出
比如某些历史表或分区表的历史分区容量较大,但是在数据恢复期间这些数据不会被DML
则可以不泵出这些数据,OGG恢复之后单独装入这些数据即可
[TOC]