温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

oracle 11g dg broker 开启fast-start failover自动故障切换

发布时间:2020-08-19 12:04:02 来源:ITPUB博客 阅读:213 作者:贺子_DBA时代 栏目:数据安全
一.首先保证主从数据库的闪回数据库功能以及强制归档都打开,如下保证都为yes
SQL> select flashback_on,force_logging from v$database;
FLASHBACK_ON       FOR
------------------ ---
NO                NO
1.1开启闪回数据库
SQL> ALTER SYSTEM SET db_recovery_file_dest_size=3g SCOPE=BOTH;
System altered.
SQL> alter system set  db_recovery_file_dest='/data/u01/app/oracle/fast_recovery_area';
System altered.
SQL> alter database flashback on;
Database altered.
1.2开启强制归档
SQL>  alter database force logging;
Database altered.
SQL> select flashback_on,force_logging from v$database;
FLASHBACK_ON       FOR
------------------ ---
YES                YES

二:开启fast-start failover
2.1:开启 fast-start failover
[oracle@beijing-fuli-hadoop-02 ~]$ dgmgrl  sys/ oracle@db2
DGMGRL for Linux: Version 11.2.0.4.0 - 64bit Production
Copyright (c) 2000, 2009, Oracle. All rights reserved.
Welcome to DGMGRL, type "help" for information.
Connected.
DGMGRL>  enable fast_start failover;
Enabled.
2.2.查看配置状态,发现警告,因为没有启动observer而告警!
DGMGRL> show configuration
Configuration - dbha_c
Protection Mode: MaxPerformance
Databases:
db2 - Primary database
Warning: ORA-16819: fast-start failover observer not started
db1 - (*) Physical standby database
Warning: ORA-16819: fast-start failover observer not started
Fast-Start Failover: ENABLED
Configuration Status:
WARNING
2.3开启 启动观察器(observer):
DGMGRL> show configuration
Configuration - dbha_c
Protection Mode: MaxPerformance
Databases:
db2 - Primary database
db1 - (*) Physical standby database
Fast-Start Failover: ENABLED
Configuration Status:
SUCCESS
由于observer的启动会一直占用session 窗口的,所以建议写成脚本挂后台
这里我们在备库上创建脚本,具体如下
创建一个名叫observer.sql的脚本,把下面的命令放进去,然后执行该脚本即可。
nohup dgmgrl  sys/oracle@db2 "start observer">>observer.log 2>&1 &
三:验证自动切换:
db2主库:
SQL> select  DATABASE_ROLE,OPEN_MODE from  v$database;

DATABASE_ROLE    OPEN_MODE
---------------- --------------------
PRIMARY          READ WRITE
db1为standby
SQL> select  DATABASE_ROLE,OPEN_MODE from  v$database;
DATABASE_ROLE    OPEN_MODE
---------------- --------------------
PHYSICAL STANDBY READ ONLY WITH APPLY
db2主库模拟异常关闭
SQL> shu abort
ORACLE instance shut down.
再次查看db1的状态:
SQL> select  DATABASE_ROLE,OPEN_MODE from  v$database;
DATABASE_ROLE    OPEN_MODE
---------------- --------------------
PRIMARY          READ WRITE


向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI