1
说明
在12c中,这个新特性的出现有大大减少了switchover和failover的复杂性。只需要一个命令即可进行角色的切换操作。而在之前的数据库版本中,往往需要多个命令才可以完成角色的切换。注意:之前的切换操作,在12c中仍然支持。
2
实验-switchover
2.1
验证是否满足switchover
新增了一个命令VERIFY用于验证备库是否满足switchover,如果有错误信息,则根据提示信息进程处理即可。
https://www.cndba.cn/Expect-le/article/2115
SQL> ALTER DATABASE SWITCHOVER TO CNDBA_S VERIFY;
Database altered.
2.2
主库上执行switchover
如果前面操作没有问题,那么执行下面的switchover操作。https://www.cndba.cn/Expect-le/article/2115https://www.cndba.cn/Expect-le/article/2115
SQL> ALTER DATABASE SWITCHOVER TO CNDBA_S;
Database altered.
如果此步出现错误信息,则根据提示进行操作,官方文档给了很详细的操作步骤,这里我不在模拟错误环境。
https://www.cndba.cn/Expect-le/article/2115
2.3
打开新主库(原备库)
https://www.cndba.cn/Expect-le/article/2115
SQL> alter database open;
Database altered.
2.4
打开新备库(原主库)
SQL> STARTUP;
2.5
启动MRP进程
https://www.cndba.cn/Expect-le/article/2115
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
https://www.cndba.cn/Expect-le/article/2115
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。
版权声明:本文为博主原创文章,未经博主允许不得转载。
switchover