暂无图片
暂无图片
4
暂无图片
暂无图片
暂无图片

一条命令进行19C ADG主备切换

原创 red_hope 2020-08-28
3164

在开始之前,我们先温故一下。

一、传统怎么做ADG切换

(一)主库操作

(1)执行命令,将主库切换为备库

SQL> ALTER DATABASE COMMIT TO SWITCHOVER TO STANDBY WITH SESSION SHUTDOWN;
执行完整个命令,主库自动停机,需要启动起来。

(2)然后执行如下命令:

SQL> startup nomount;
SQL> alter database mount standby database;
SQL> ALTER DATABASE RECOVER MANAGED standby DATABASE DISCONNECT FROM SESSION;
如果要打开数据库,请先断开同步连接,然后alter database open;打开后再执行:
SQL> ALTER DATABASE RECOVER MANAGED standby DATABASE DISCONNECT FROM SESSION;重新开启同步。

(二)备库操作

(1)执行命令,将备库切换为主库

SQL> ALTER DATABASE COMMIT TO SWITCHOVER TO primary;

(2)手动打开数据库

SQL> ALTER DATABASE OPEN;

(三)常用的是三个试图

(1)select PROCESS,PID,STATUS, GROUP# , RESETLOG_ID,THREAD#,SEQUENCE# from v$managed_standby;

(2)select NAME,DATABASE_ROLE,PROTECTION_MODE,PROTECTION_LEVEL,SWITCHOVER_STATUS,FLASHBACK_ON,OPEN_MODE from v$database;

(3)select inst_id,name,value,time_computed,DATUM_TIME,sysdate from gv$dataguard_stats order by inst_id;

看上去也不是很麻烦,但是要做的操作确实有点多,尤其是在自动化切换过程中,就显得不是很方便。19c提供了一个更快的切换方法(12c没试过,有条件可以试一下),主要切换命令就一条。

二、如何一条进行19C切换

(一)在主库,执行切换到备库的命令

例如,主库是EOMS,备库是DREOMS,在EOMS库执行:
ALTER DATABASE SWITCHOVER TO DREOMS;
这条命令,就完成了主备切换,执行完成后,EOMS自动变成备库,DREOMS自动变成主库。

(二)当然,其它辅助操作还是要有的

(1)最好,切换之前先验证一下:ALTER DATABASE SWITCHOVER TO DREOMS VERIFY;有问题解决问题;
(2)切换后原来的主数据库需要重新startup(主数据库主动宕机了),并且要手动开启动同步:
SQL>ALTER DATABASE RECOVER MANAGED standby DATABASE DISCONNECT FROM SESSION;
(3)切换后,备库需要alter database open;

(三)切换完成后校验

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论