12c及以后 ADG主备切换

12c及以后 ADG主备切换 - 目录

    • 一、概述
    • 二、切换前检查
      • [2.1 检查传输通道和GAP](#2.1 检查传输通道和GAP)
      • [2.2 检查延迟时间](#2.2 检查延迟时间)
      • [2.3 检查主库VDATABASE.SWITCHOVER_STATUS](#2.3 检查主库VDATABASE.SWITCHOVER_STATUS)
    • 三、开始切换
      • [3.1 验证备库进行切换](#3.1 验证备库进行切换)
      • [3.2 在主库上启动切换](#3.2 在主库上启动切换)
      • [3.3 打开新主库](#3.3 打开新主库)
      • [3.4 open新的备库](#3.4 open新的备库)
      • [3.5 新的备库上启动Redo Apply](#3.5 新的备库上启动Redo Apply)
    • 四、切换后检查
      • [4.1 主备检查进程情况](#4.1 主备检查进程情况)
      • [4.2 新主库查询通道是否有error](#4.2 新主库查询通道是否有error)
      • [4.3 备库观察传输和应用延迟](#4.3 备库观察传输和应用延迟)

一、概述

12c之后切换步骤,使用11g命令也是可以完成主备切换的。

二、切换前检查

2.1 检查传输通道和GAP

sql 复制代码
备库执行
SQL> SELECT STATUS, GAP_STATUS FROM V$ARCHIVE_DEST_STATUS WHERE DEST_ID = 2;

2.2 检查延迟时间

sql 复制代码
备库执行,延迟尽可能等于0
SQL> COLUMN NAME FORMAT A24
SQL> COLUMN VALUE FORMAT A16     
SQL> COLUMN DATUM_TIME FORMAT A24
SQL> SELECT NAME, VALUE, DATUM_TIME FROM V$DATAGUARD_STATS;

2.3 检查主库V$DATABASE.SWITCHOVER_STATUS

sql 复制代码
查询结果为to standby/session active,可以准备切换成备库
SQL> SELECT SWITCHOVER_STATUS FROM V$DATABASE;

三、开始切换

3.1 验证备库进行切换

sql 复制代码
验证的项目包括:Redo Apply是否在切换目标上运行; 切换目标的发布版本是否为12.1或更高; 切换目标是否同步; 以及是否运行了MRP
SQL> ALTER DATABASE SWITCHOVER TO 备库的db_unique_name verify;

3.2 在主库上启动切换

sql 复制代码
SQL> ALTER DATABASE SWITCHOVER TO 备库的db_unique_name;

3.3 打开新主库

sql 复制代码
SQL> alter database open;

3.4 open新的备库

sql 复制代码
在新的备库执行以下SQL语句以只读方式打开
SQL> startup

3.5 新的备库上启动Redo Apply

sql 复制代码
SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT FROM SESSION;

四、切换后检查

4.1 主备检查进程情况

sql 复制代码
SQL> col group_# for a5
SQL> col client_pid for a8
SQL> set line 250 pagesize 9999
SQL> SELECT A.INST_ID,A.PROCESS,A.STATUS,A.CLIENT_PROCESS,A.CLIENT_PID,A.GROUP# GROUP_#,A.THREAD#,A.SEQUENCE#,A.DELAY_MINS,
A.RESETLOG_ID,C.SID,C.SERIAL#,A.PID SPID,B.PNAME FROM GV$MANAGED_STANDBY A, GV$PROCESS B, GV$SESSION C
WHERE A.PID = B.SPID AND B.ADDR = C.PADDR AND A.INST_ID = B.INST_ID AND B.INST_ID = C.INST_ID ORDER BY A.INST_ID,B.PNAME;

4.2 新主库查询通道是否有error

sql 复制代码
SQL> set line 300
SQL> col DEST_NAME for a60
SQL> select dest_name,status,error from gv$archive_dest;

4.3 备库观察传输和应用延迟

sql 复制代码
SQL> COLUMN NAME FORMAT A24
SQL> COLUMN VALUE FORMAT A16     
SQL> COLUMN DATUM_TIME FORMAT A24
SQL> SELECT NAME, VALUE, DATUM_TIME FROM V$DATAGUARD_STATS;
相关推荐
Code季风4 分钟前
SQL关键字快速入门:HAVING 分组后的条件过滤
数据库·sql·mysql
.YYY6 分钟前
网络--初级
网络·计算机网络
阿维的博客日记21 分钟前
HTTP/3.0的连接迁移使用连接ID来标识连接为什么可以做到连接不会中断
网络·网络协议·http
半路_出家ren25 分钟前
第8章:应用层协议HTTP、SDN软件定义网络、组播技术、QoS
网络·网络协议·http·mpls·qos·sdn软件定义网络·组播技术
程序猿ZhangSir36 分钟前
Redis 缓存进阶篇,缓存真实数据和缓存文件指针最佳实现?如何选择?
数据库·redis·缓存
yjb.gz38 分钟前
Oracle函数JSON_TABLE使用
数据库·oracle·json
teeeeeeemo1 小时前
http和https的区别
开发语言·网络·笔记·网络协议·http·https
Ronin3051 小时前
【Linux系统】vim编辑器 | 编译器gcc/g++ | make/Makefile
linux·运维·服务器·ubuntu·编辑器·vim
Dubhehug1 小时前
4.B树和B+树的区别?为什么MySQL选择B+树作为索引?
数据库·b树·mysql·面试·b+树
Bruce_Liuxiaowei1 小时前
Netstat高级分析工具:Windows与Linux双系统兼容的精准筛查利器
linux·运维·网络·windows·安全