FSFO(fast startfailover 快速启动故障)
DG_broker已经配置完了,可是还是需要我们进行手动切换,如果我们想让数据库自动切换,那么还需要配置FSFO了。
a)启用闪回
FSFO 将闪回数据库用作将故障主数据库恢复为备用数据库流程的一部分,所以我们需要启用数据库的闪回功能:
开启闪回的步骤可参考:
http://blog.csdn.net/shiyu1157758655/article/details/55095760
注意:在生产库上配置闪回区,这个闪回区大小要足够大,不然闪回区满了会导致数据库宕机。
b)启用FSFO
启用了主备库的闪回功能后,我们就可以启动FSFO了,登录dgmgrl连接主库:
ocrl:/home/oracle@oracle1>dgmgrl
DGMGRL>connect sys/oracle@ocrl
DGMGRL>show configuration
DGMGRL> enable fast_start failover;
可是我们发现DGMGRL告警了,那是因为我们没有启动观察器(observer)的原因,那我们接下来就启动观察器吧!(由于observer的启动会一直占用session 窗口的,所以建议写成脚本挂后台)
这里我们在备库上创建脚本,具体如下
创建一个名叫fsfo.sql的脚本,把下面的命令放进去,然后执行该脚本即可。
nohup dgmgrlsys/oracle@ocrl "start observer file=FSFO.dat">>fsfo.log 2>&1 &
启动observer后,我们再看一下配置状态
DGMGRL>show configuration
这样我们的FSFO就配置完成了,下面我们模拟主库宕机后,FSFO的切换:
1) 直接把主库的关掉
SQL> shutdown abort
2) 查看我们observer的日志//在备库上
从日志中可以发现FSFO已经切换备库的角色了!
如果有配置错误还请不啬指出,欢迎加入oracle qq群: 425614362