物理STANDBY的SWITCHOVER切换会把当前的一个物理STANDBY切换为PRIMARY数据库,而PRIMARY数据库且变成物理STNADBY数据库。
一般SWITCHOVER切换都是计划中的切换,特点是在切换后,不会丢失任何的数据,而且这个过程是可逆的,整个DATA GUARD环境不会被破坏,原来DATA GUARD环境中的所有物理和逻辑STANDBY都可以继续工作。
在进行DATA GUARD的物理STANDBY切换前需要注意:
确认主库和从库间网络连接通畅;
确认没有活动的会话连接在数据库中;
PRIMARY数据库处于打开的状态,STANDBY数据库处于MOUNT状态;
确保STANDBY数据库处于ARCHIVELOG模式;
如果设置了REDO应用的延迟,那么将这个设置去掉;
确保配置了主库和从库的初始化参数,使得切换完成后,DATA GUARD机制可以顺利的运行。
登陆PRIMARY数据库:
[oracle@yangtk2 ~]$ sqlplus "/ as sysdba"
SQL*Plus: Release 11.1.0.6.0 - Production on Thu Nov 8 02:20:13 2007
Copyright (c) 1982, 2007, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Enterprise Edition Release 11.1.0.6.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
SQL> SET PAGES 100 LINES 120
SQL> SET SQLP 'PRI_SQL> '
PRI_SQL> SELECT SWITCHOVER_STATUS FROM V$DATABASE;
SWITCHOVER_STATUS
--------------------
SESSIONS ACTIVE
PRI_SQL> SELECT COUNT(*) FROM V$SESSION WHERE USERNAME IS NOT NULL;
COUNT(*)
----------
1
虽然当前数据库的状态是SESSIONS ACTIVE而不是TO STANDBY,但是查询V$SESSION会话,确认除了当前会话外,其他都是系统会话,那么就可以在主库进行SWITCHOVER切换了:
PRI_SQL> ALTER DATABASE COMMIT TO SWITCHOVER TO PHYSICAL STANDBY;
Database altered.
PRI_SQL> SHUTDOWN IMMEDIATE
ORA-01507: database not mounted
ORACLE instance shut down.
PRI_SQL> STARTUP MOUNT
ORACLE instance started.
Total System Global Area 267825152 bytes
Fixed Size 1299316 bytes
Variable Size 159386764 bytes
Database Buffers 104857600 bytes
Redo Buffers 2281472 bytes
Database mounted.
重启数据库,启动到MOUNT状态,注意,9i及以前版本需要START NOMOUNT,然后ALTER DATABASE MOUNT STANDBY DATABASE。
下面登陆STANDBY数据库:
[oracle@yangtk ~]$ sqlplus "/ as sysdba"
SQL*Plus: Release 11.1.0.6.0 - Production on Sat Oct 20 12:16:01 2007
Copyright (c) 1982, 2007, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Enterprise Edition Release 11.1.0.6.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
SQL> SET PAGES 100 LINES 120
SQL> SET SQLP 'STB_SQL> '
STB_SQL> SELECT SWITCHOVER_STATUS FROM V$DATABASE;
SWITCHOVER_STATUS
--------------------
TO PRIMARY
如果SWITCHOVER_STATUS的状态为switchover pending,则需要先进行恢复再进行switchover
select switchover_status from v$database;
SWITCHOVER_STATUS
--------------------
SWITCHOVER PENDING
STB_SQL> alter database commit to switchover to primary;
alter database commit to switchover to primary
*
ERROR at line 1:
ORA-16139: media recovery required
STB_SQL> alter database recover managed standby database disconnect from session;
Database altered.
STB_SQL> alter database recover managed standby database cancel;
Database altered.
STB_SQL> select switchover_status from v$database;
SWITCHOVER_STATUS
--------------------
TO PRIMARY
下面就可以将STANDBY数据库切换到PRIMARY数据库:
STB_SQL> ALTER DATABASE COMMIT TO SWITCHOVER TO PRIMARY;
Database altered.
STB_SQL> ALTER DATABASE OPEN;
Database altered.
STANDBY数据库已经切换为PRIMARY数据库,下面只需要启动将STANDBY开始接收并恢复主库的日志就可以了。回到切换前的主库现在的从库:
PRI_SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT FROM SESSION;
Database altered.
SWITCHOVER切换完成,最后检查一下归档是否可以正常传递到STANDBY数据库即可。
参考至:http://yangtingkun.itpub.net/post/468/412324
http://wenku.baidu.com/link?url=Uf1o2tzuYb7IKO3bckz54z_K87EPiM80xRHIDrgfwk8KHG4iiIvpnLelpuItv9MbwjEAuCyutY9rAATVLOMQh4z1zcfbcmykcvw0TW1YPYm
如有错误,欢迎指正
邮箱:czmcj@163.com
相关推荐
【DATAGUARD】物理dg的switchover切换(五).pdf【DATAGUARD】物理dg的switchover切换(五).pdf
Oracle Database 12c 部署Data Guard(ADG、LDG)并实现Switchover和Failover(Rman Duplicate和Broker).pdf
oracle dataguard switchover scripts
Oracle 19c DataGuard搭建以及使用dg_broker管理,通过dg_broker管理DataGuard以及Far_SYNC实例,快速switchover。
更加易于管理的switchover/failover 角色转换及最更短的计划内或计划外停机时间。 数据保护:应用物理standby 数据库,Dg 能够确保即使面对无法预料的灾害也能够不丢失数据。前面也提到物理standby 是基于块对块的...
perform oracle 11g physacal dataguard switchover
(八.1)物理dg配置客户端无缝切换--Data Guard Broker 的配置 (八.2)物理dg配置客户端无缝切换--Fast-Start ...(八.5)物理dg的switchover切换 (八.6)物理dg的failover切换 (八.7)物理dg在主库丢失归档文件的情况下的恢复
以下是对Oracle中Switchover与Failover的使用进行了详细的分析介绍,需要的朋友参考下
Oracle Dataguard 主备切换(Switchover)实例 主备切换(Switchover)详细步骤
详细讲述了Data Guard Broker概念、安装、管理配置、Switchover和Failover切换、使用DGMGRL命令行管理、故障排查解除…………
oracle 19c容器多租户 rac to rac的adg测试部署方案,完全实测步骤。 使用了DG_BROCKER管理,方便switchover。
DB_UNIQUE_NAME: DG ...... 4. 修改配置成规档模式 1)、检查数据库是否处于归档状态 SQL> archive log list; SQL> shutdown immediate; SQL> startup mount; SQL> alter database archivelog; SQL> alter database ...
11.6.1 Switchover切换 11.6.2 Failover切换 11.7本章小结 第12章 RAC备份 12.1备份与恢复基础 12.1.1备份和恢复解决方案 12.1.2数据库备份的分类 12.1.3错误类型 12.2物理备份工具RMAN 12.2.1 RMAN工作...
SwitchOver
Oracle 10g DATAGUARD安装配置 维护 1.1 LINUX 操作系统的安装和配置.................................................................. 1.2 DataGuard 安装环境..................................................
Dataguard故障切换(Switchover和Failover)及利用Flashback进行恢复
新手上路,在几经辗转多方查看网上各路大侠的资料下,终于搞定了dataguard的物理standby配置问题,以及主备库的switchover。下面就基于网络上一篇配置文档,写下了我的配置过程,愿似我这般新手可以少走弯路。
dataguard一键切换脚本适用于DBA 灾备主备切换场景下适用,适用该脚本可以实现一键切换,重复调用。