DataGuard---->物理StandBy的角色切换之switchover
Switchover,无损切换,通常是用户手动触发或者有计划地让其自动触发,如硬件升级等。
步骤:
1、Primary数据库转换为StandBy角色
2、StandBy数据库(之一)转换为Primary角色
准备工作:
1、检查待转换角色的数据库参数配置正确
2、检查即将成为Primay的物理Standby服务器是否是归档模式
3、确保所有的归档日志已经传送到物理StandBy数据库
主库可以手动切换一次logfile
Primary>alter system switch logfile;
查询主库当前的归档日志sequence#
Primary>select max(sequence#) from v$archived_log; MAX(SEQUENCE#)
--------------
22
查询备库当前的归档日志sequence#
StandBY>select max(sequence#) from v$archived_log; MAX(SEQUENCE#)
--------------
22
两者相同,代表已经完全同步
然后再暂停备库的redo应用
StandBy>alter database recover managed standby database cancel; Database altered.
一、查询是否可以转换
查询主库是否支持switchover操作
Primary> select file_name, bytes from dba_temp_files;
SWITCHOVER_STATUS
----------------------------------------
TO STANDBY
如果是SWICHOVER_STATUS显示为SESSIONS ACTIVE, 说明当前有人连接Primary数据库
查询备库是否支持switchover操作
StandBy> select switchover_status from v$database; SWITCHOVER_STATUS
----------------------------------------
NOT ALLOWED
NOT ALLOWED是因为主库还未变切换为standby
二、primary数据库切换为物理standby
Primary—>StandBy
Primary>alter database commit to switchover to physical standby; Database altered.
此时Primary数据库变为mount状态
Primary>select open_mode from v$database; OPEN_MODE
----------------------------------------
MOUNTED
角色也变为physical standby
Primary>select database_role from v$database; DATABASE_ROLE
--------------------------------
PHYSICAL STANDBY
如果此时打开数据库,为只读状态
Primary>alter database open; Database altered. Primary>select open_mode from v$database; OPEN_MODE
----------------------------------------
READ ONLY Primary>
三、StandBy数据库转换为Primary角色
StandBy--->Primary
StandBy>select switchover_status from v$database; SWITCHOVER_STATUS
----------------------------------------
TO PRIMARY StandBy> alter database commit to switchover to primary; Database altered. StandBy>alter database open; Database altered. StandBy>select open_mode from v$database; OPEN_MODE
----------------------------------------
READ WRITE StandBy>select database_role from v$database; DATABASE_ROLE
--------------------------------
PRIMARY StandBy>
四、同步测试
1、当前的Primay数据库插入一条数据
Primay>select * from scott.dept;
DEPTNO DNAME LOC
---------- ---------------------------- --------------------------
10 ACCOUNTING NEW YORK
20 RESEARCH DALLAS
30 SALES CHICAGO
40 OPERATIONS BOSTON
12 OPERATIONS OPERATIONS
13 OPERATIONS OPERATIONS
6 rows selected.
Primay>INSERT INTO "SCOTT"."DEPT" ("DEPTNO", "DNAME", "LOC") VALUES ('14', 'OPERATIONS', 'OPERATIONS');
1 row created.
StandBY>commit;
Commit complete.
Primay>select * from scott.dept;
DEPTNO DNAME LOC
---------- ---------------------------- --------------------------
14 OPERATIONS OPERATIONS
10 ACCOUNTING NEW YORK
20 RESEARCH DALLAS
30 SALES CHICAGO
40 OPERATIONS BOSTON
12 OPERATIONS OPERATIONS
13 OPERATIONS OPERATIONS
7 rows selected.
2、当前的StandBy启用redo应用
实时redo应用的情况
Primary>alter database recover managed standby database using current logfile disconnect from session; Database altered.
非实时redo应用的情况
-----应用redo
alter database recover managed standby database disconnect from session;
-----暂停redo应用
alter database recover managed standby database cancel;
查询
Primary>select * from scott.dept;
DEPTNO DNAME LOC
---------- ---------------------------- --------------------------
14 OPERATIONS OPERATIONS
10 ACCOUNTING NEW YORK
20 RESEARCH DALLAS
30 SALES CHICAGO
40 OPERATIONS BOSTON
12 OPERATIONS OPERATIONS
13 OPERATIONS OPERATIONS
7 rows selected.
无法同步的情况问题解决
1、如果无法同步,切换日志试试
StandBY>alter system switch logfile;
查询Priamry和StandBy的归档日志编号是否相同
StandBY>select max(sequence#) from v$archived_log; MAX(SEQUENCE#)
--------------
22
2、查看配置的服务名中的service_name 和lsnrctl status中的是否相同
DataGuard---->物理StandBy的角色切换之switchover的更多相关文章
- (摘)DataGuard物理standby管理 - 主备切换
DataGuard物理standby管理 - 主备切换 Dataguard的切换分为两种,switchover和failover. switchover一般用于数据库或硬件升级,这时只需要较短时间中断 ...
- Oracle 12C 物理Standby 主备切换switchover
Oracle 12C 物理Standby 主备切换switchover Oracle 12C 物理Standby 主备切换switchover Table of Contents 1. 简述 2. 切 ...
- ORACLE11g Dataguard物理Standby 日常巡检操作手册
ORACLE11g Dataguard物理Standby日常巡检操作手册 编写:_____________校对:_____________日期:_____________ 目录1.DG环境的日常巡检 ...
- Oracle DataGuard 物理Standby 搭建(下)
主备库切换 Switchover 一般SWITCHOVER切换都是计划中的切换,特点是在切换后,不会丢失任何的数据,而且这个过程是可逆的,整个DATA GUARD环境不会被破坏,原来DATA GUAR ...
- Oracle DataGuard 物理Standby 搭建(上)
物理standby database 环境搭建 Arch asysnc Oracle Dataguard host IP Oracle_sid DB_unique_name FAL_server FA ...
- dataGuard主备库角色切换
切换顺序: 先主库后备库 --查看主库可切换状态: SQL> select switchover_status from v$database; SWITCHOVER_STATUS ------ ...
- DataGuard相同SID物理Standby搭建
Oracle Data Guard 是针对企业数据库的最有效和最全面的数据可用性.数据保护和灾难恢复解决方案.它提供管理.监视和自动化软件基础架构来创建和维护一个或多个同步备用数据库,从而保护数据不受 ...
- 【DATAGUARD】物理dg的failover切换(六)
[DATAGUARD]物理dg的failover切换(六) 一.1 BLOG文档结构图 一.2 前言部分 一.2.1 导读 各位技术爱好者,看完本文后,你可以掌握如下的技能,也可以学到一些其它你 ...
- Duplicate复制数据库并创建物理StandBy(spfile+不同实例名+不同路径)
过程和Duplicate复制数据库并创建物理StandBy类似,只是不需要重启数据库. 目的:创建standby,不重启源数据库 1设定环境如下: Primary数据库 IP 172.17.22.16 ...
随机推荐
- python 全栈开发,Day10(动态参数,命名空间,作用域,函数嵌套)
一.动态参数 def func(a,b,c,d,e,f,g): pass func(1,2,3,4,5,6,7) 如果加30个参数呢?有没有万能的参数,可以代表一切参数呢? *args 动态参数,万能 ...
- 《剑指offer》-数字在排序数组中出现的次数
统计一个数字在排序数组中出现的次数. 首先吐槽下出题人的用词,啥叫排序数组?"排序"是个动词好么,"有序"作为一个形容词表示状态,修饰"数组" ...
- 移除powerdesigner中Recent Files中无效链接的文件
最近总算折腾清楚了,如何删除PowerDesigner中Recent Files或者recent models中不想显示的PDM文件链接: 解决方案: 将原文件的名称改变下,点击原先的文件链接,提示已 ...
- [转] 通过jQuery Ajax使用FormData对象上传文件
FormData对象,是可以使用一系列的键值对来模拟一个完整的表单,然后使用XMLHttpRequest发送这个"表单". 在 Mozilla Developer 网站 使用For ...
- A. 【UR #17】滑稽树上滑稽果
题解: 首先很显然的是这是一条链(特殊数据说是链是故意让人迷茫的??) 然后 自己就开始yy 觉得每一次是加入一个使得当前值最小的数 然而这tm又是特殊数据?? 那就写一波发现是错的 考虑一下特殊数据 ...
- URAL - 1495 One-two, One-two 2
URAL - 1495 这是在dp的专题里写了,想了半天的dp,其实就是暴力... 题目大意:给你一个n,问你在30位以内有没有一个只由1或2 构成的数被 n 整除,如果 有则输出最小的那个,否则输出 ...
- Codeforces Round #392 (Div. 2)-D. Ability To Convert
D - Ability To Convert 题目大意:给你一个数字 n 接下来再输入一个数字 w(<10^60),表示w这个数字是 n 进制的, 并且超过十进制也用数字表示,这样就有多种组合了 ...
- Ubuntu 下常用命令
整理一下比较常用的操作命令: 附上一个Linux 命令大全: http://man.linuxde.net/ 打开终端:Ctrl+Alt+T ls: ls : 查看当前路径下的文件夹以及文件 ls + ...
- 【RAY TRACING THE REST OF YOUR LIFE 超详解】 光线追踪 3-5 random direction & ONB
Preface 往后看了几章,对这本书有了新的理解 上一篇,我们第一次尝试把MC积分运用到了Lambertian材质中,当然,第一次尝试是失败的,作者发现它的渲染效果和现实有些出入,所以结尾处声明要 ...
- websphere 进程
websphere 监听的是8880端口, 一个server占用300M的内存. 1.查看进程号 >netstat -aon | findstr "8880" TCP 0.0 ...