How to Switchover&Failover in DataGuard-11G

16 篇文章 0 订阅
基础配置
为了方便每一步的操作是在哪个机器操作的,特意设置了glogin.sql
路径:$ORACLE_HOME/sqlplus/admin/glogin.sql中添加如下代码:
define _editor=vi
set line 150
set pagesize 9999
set long 5000
set serveroutput on size 1000000
col object_name for a30
col name for a30
col segment_name for a30
col file_name for a50
col event for a40
col value for a40
define gname=idle
column global_name new_value gname
set termout off
select lower(user)||'@'||(select db_unique_name from v$database) global_name from v$database;
set sqlprompt '&gname>'
set termout on
Switchover
1、检查主、备库归档日志序列一致
sys@prixcky>select max(sequence#) from v$archived_log;
MAX(SEQUENCE#)
--------------
  202
sys@stdxcky>select max(sequence#) from v$archived_log;
MAX(SEQUENCE#)
--------------
  202
2、检查主库有无活动session
sys@prixcky>select username,sid,serial# from v$session where username is not null;
USERNAME      SID    SERIAL#
----------------------------
XCKY           52        3
SYS            59     1083
SYS           142      789
SYS           225      151
3、检查主库是否可切换为physical standby
sys@prixcky>select name,database_role,protection_mode,switchover_status from v$database;
NAME       DATABASE_ROLE PROTECTION_MODE      SWITCHOVER_STATUS
-----------------------------------------------------------------
XCKY       PRIMARY       MAXIMUM PERFORMANCE  TO STANDBY
4、主库切换为目标备库
sys@prixcky> alter database commit to switchover to standby with session shutdown ;
Database altered.
sys@prixcky>select name,database_role,protection_mode,switchover_status from v$database;
NAME       DATABASE_ROLE    PROTECTION_MODE      SWITCHOVER_STATUS
-------------------------------------------------------------------------
XCKY       PHYSICAL STANDBY MAXIMUM PERFORMANCE  RECOVERY NEEDED
5、目标备库启动到mount
此时,目标备库已经不再连接数据库,直接退出,
sys@prixcky>quit
Disconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
[oracle@ora11g ~]$ sqlplus "/ as sysdba"
SQL*Plus: Release 11.2.0.3.0 Production on Wed Sep 13 05:08:45 2017
Copyright (c) 1982, 2011, Oracle.  All rights reserved.
Connected to an idle instance.
idle>startup mount
ORACLE instance started.
Total System Global Area 6413680640 bytes
Fixed Size    2240344 bytes
Variable Size 3187671208 bytes
Database Buffers3204448256 bytes
Redo Buffers   19320832 bytes
Database mounted. 
6、查看原备库是否可切换为目标主库
sys@stdxcky>select name,database_role,protection_mode,switchover_status from v$database;
NAME      DATABASE_ROLE    PROTECTION_MODE      SWITCHOVER_STATUS
------------------------------------------------------------------
XCKY      PHYSICAL STANDBY MAXIMUM PERFORMANCE  SESSIONS ACTIVE
7、原备库切换为目标主库
sys@stdxcky>alter database commit to switchover to primary with session shutdown ;
Database altered.
sys@stdxcky>select name,database_role,protection_mode,switchover_status from v$database;
NAME       DATABASE_ROLE PROTECTION_MODE    SWITCHOVER_STATUS
------------------------------ ------------------------------------
XCKY       PRIMARY       MAXIMUM PERFORMANCE      NOT ALLOWED
8、目标主库开库
sys@stdxcky>alter database open;
Database altered.
sys@stdxcky>select name,database_role,protection_mode,switchover_status from v$database;
NAME       DATABASE_ROLE  PROTECTION_MODE      SWITCHOVER_STATUS
---------------------------------------------------------------
XCKY       PRIMARY        MAXIMUM PERFORMANCE  RESOLVABLE GAP
9、目标备库开库
idle>alter database open; 
Database altered.
idle>select name,database_role,protection_mode,switchover_status from v$database;
NAME       DATABASE_ROLE    PROTECTION_MODE      SWITCHOVER_STATUS
-----------------------------------------------------------------
XCKY       PHYSICAL STANDBY MAXIMUM PERFORMANCE  RECOVERY NEEDED
10、检查主备库状态,恢复DG可用
目标备库恢复RTA
idle> recover managed standby database disconnect from session; ----启用日志应用,应用主库传输过来的redo
Media recovery complete.
idle>select name,database_role,protection_mode,switchover_status from v$database;
NAME       DATABASE_ROLE PROTECTION_MODE      SWITCHOVER_STATUS
------------------------------ -----------------------------------   --------------------

XCKY       PHYSICAL STANDBY MAXIMUM PERFORMANCE  NOT ALLOWED

查看recovery_mode为MANAGED,启用了日志应用
sys@prixcky>select dest_id,recovery_mode from v$archive_dest_status where dest_id=1;
   DEST_ID RECOVERY_MODE
    ----------   --------------
     1             MANAGED

sys@prixcky>alter database recover managed standby database using current logfile disconnect from session;
alter database recover managed standby database using current logfile disconnect from session
*
ERROR at line 1:
ORA-01153: an incompatible media recovery is active


sys@prixcky>alter database recover managed standby database cancel;----首先要取消managed的recovery_mode
Database altered.

----启用RTA的recovery_mode
sys@prixcky>alter database recover managed standby database using current logfile disconnect from session;
Database altered.

sys@prixcky>select dest_id,recovery_mode from v$archive_dest_status where dest_id=1;
   DEST_ID RECOVERY_MODE
   ----------    -----------------------
         1         MANAGED REAL TIME APPLY


目标主库状态
sys@stdxcky>select name,database_role,protection_mode,switchover_status from v$database;
NAME       DATABASE_ROLE  PROTECTION_MODE               SWITCHOVER_STATUS
-----------------------------------------------------------------------------------------------------------------
XCKY       PRIMARY                   MAXIMUM PERFORMANCE     TO STANDBY












  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值