Oracle 12c DG新特性---一键switchover

1 说明
在12c中,这个新特性的出现有大大减少了switchover 和failover的复杂性。只需要一个命令即可进行角色的切换操作。而在之前的数据库版本中,往往需要多个命令才可以完成角色的切换。

注意:之前的切换操作,在12c中仍然支持。

2 实验-switchover

2.1 验证是否满足switchover

新增了一个命令VERIFY用于验证备库是否满足switchover,如果有错误信息,则根据提示信息进程处理即可。

SQL> ALTER DATABASE SWITCHOVER TO CNDBA_S VERIFY;
Database altered.

2.2 主库上执行switchover

如果前面操作没有问题,那么执行下面的switchover操作。

SQL> ALTER DATABASE SWITCHOVER TO CNDBA_S;
Database altered.

如果此步出现错误信息,则根据提示进行操作,官方文档给了很详细的操作步骤,这里我不在模拟错误环境。

具体信息参考官方文档:http://docs.oracle.com/database/121/SBYDB/role_management.htm#SBYDB5171

2.3 打开新主库(原备库)

SQL> alter database open;
Database altered.

2.4 打开新备库(原主库)

SQL> STARTUP;

2.5 启动MRP进程

SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT FROM SESSION;
Database altered.

2.6 查看是否切换成功

2.6.1 新主库状态

SQL> select database_role,open_mode from v$database;
DATABASE_ROLE	 OPEN_MODE
---------------- --------------------
PRIMARY  READ WRITE

2.6.2 新备库状态

SQL> select database_role,open_mode from v$database;
DATABASE_ROLE	 OPEN_MODE
---------------- --------------------
PHYSICAL STANDBY READ ONLY WITH APPLY

2.6.3 查看备库MRP进程

SQL> select process,status from v$managed_standby;
PROCESS   STATUS
--------- ------------
ARCH	  CONNECTED
ARCH	  CLOSING
ARCH	  CONNECTED
ARCH	  CLOSING
RFS	  IDLE
RFS	  IDLE
RFS	  IDLE
MRP0	  APPLYING_LOG
8 rows selected.

切换成功,比之前方便多了。前提是一些参数要主备库都要配置好,例如standby log,log_archive_dest_n。

猜你喜欢

转载自blog.csdn.net/qianglei6077/article/details/92065977