DG的RFS进程不存在的解决办法

来源:互联网 发布:海康威视有一个无网络 编辑:程序博客网 时间:2024/06/08 10:31
1.首先查看是否存在LSN和RFS进程
select process from v$managed_standby;

2不存在的话,查看oracle alert.log日志,查看日志是否报错。如果日志没有报错,执行如下脚本
在主库和备库均执行
alter system set LOG_ARCHIVE_DEST_STATE_1=ENABLE;
alter system set LOG_ARCHIVE_DEST_STATE_2=ENABLE;
原因是
log_archive_dest_state_n这个参数有时候数据库不认,show paremeter 出来的参数不一定就是数据库认定的参数,所以必要时重新修改参数后在修改回来。抱着试一试的心态,在之后再发生RFS进程不存在的问题时,我就重新声明一遍log_archive_dest_state_n参数,先defer在enable,还真管用。(直接再次执行 alter system set LOG_ARCHIVE_DEST_STATE_1=ENABLE 即可)

我们仍然分两部分来解读:
1)在 primary 数据库,LGWR 提交 redo 数据到 LNSn(LGWR Network Server process)进程(n>0) ,LNSn 启动网络传输。

2)standby 数据库的 RFS(Remote File Server)将接收到的 redo 数据写入 standby redolog。特别注意,在此期间,primary 数据库的事务会一直保持,直到所有所有含 LGWR SYNC 属性的LOG_ARCHIVE_DEST_n指定路径均已完成接收。

0 0