>데이터 베이스 >MySQL 튜토리얼 >Data Guard之逻辑备库的故障切换(logical standby failover)

Data Guard之逻辑备库的故障切换(logical standby failover)

WBOY
WBOY원래의
2016-06-07 17:14:461178검색

在Oracle 10g logical standby 的模式下,如果主库出现了故障,备用库也可以迅速切换成主库使用。参考oracle 官方文档中7.3.2 Fa

在Oracle 10g logical standby 的模式下,如果主库出现了故障,备用库也可以迅速切换成主库使用。

参考oracle 官方文档中7.3.2 Failovers Involving a Logical Standby Database 章节,切换过程介绍的很详细。

这里根据实际项目需要,总结成下列三步。

第一步,将逻辑备库的应用模式关闭,近可能应用完所有的归档日志文件,使数据丢失度尽量小。

使用该SQL 检查日志的应用情况。

SELECT APPLIED_SCN, LATEST_SCN FROM V$LOGSTDBY_PROGRESS;

select to_char(applied_scn),to_char(latest_scn) from v$logstdby_progress;

如果两个值相等,那么继续下一步吧。

如果SQL 应用模式不是活动状态,那么可以启用它。

SQL> ALTER DATABASE START LOGICAL STANDBY APPLY FINISH;

Database altered.

SQL 应用完毕后,,关闭SQL 应用模式。这里我直接重启了一下数据库。

SQL> alter database open;

Database altered.

第二步,将逻辑备用库转换为主库

SQL> ALTER DATABASE ACTIVATE LOGICAL STANDBY DATABASE FINISH APPLY;

Database altered.

这个语句停止RFS 进程,应用所有的standby 重做日志文件中的重做日志,然后停止SQL 应用,将备库切换成主库。

如果FINISH APPLY 不指定,那么将会不应用standby 重做日志文件中的重做日志信息。

linux

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.