DataGuard在做Switchover切换时遇到ORA-01093等问题总结


1.主库在进行物理主备库角色转换的时候遇到ORA-01093错误

SQL> select switchover_status from v$database;
SWITCHOVER_STATUS
--------------------
SESSIONS ACTIVE ----------有活动会话。

SQL> ALTER DATABASE COMMIT TO SWITCHOVER TO PHYSICAL STANDBY;
ALTER DATABASE COMMIT TO SWITCHOVER TO PHYSICAL STANDBY
*
ERROR at line 1:
ORA-01093: ALTER DATABASE CLOSE only permitted with no sessions connected

此错误的因为主库中有活动的会话造成的,解决的办法为:
1.杀掉活动会话,重新执行该命令
2.在该命令后面加上with session shutdown即
ALTER DATABASE COMMIT TO SWITCHOVER TO PHYSICAL STANDBY WITH SESSION SHUTDOWN;

2.备库在转换为主库时状态为:NOT ALLOWED--可能需要恢复或者退出恢复模式。

SQL> select switchover_status from v$database;
SWITCHOVER_STATUS
--------------------
NOT ALLOWED
SQL> alter database commit to switchover to primary;
alter database commit to switchover to primary
*
ERROR at line 1:
ORA-16139: media recovery required
或者如下:--RECOVERY NEEDED
SQL> select switchover_status from v$database;
SWITCHOVER_STATUS
--------------------
RECOVERY NEEDED
###############
SQL> alter database recover managed standby database disconnect from session;
Database altered.
SQL> select switchover_status from v$database;
SWITCHOVER_STATUS
--------------------
TO PRIMARY
SQL> alter database commit to switchover to primary;
Database altered.

3.主库切换为备库后,备库不做:alter database recover managed standby database cancel;也可以,此时已经自动断开了,日志中有提示:

Sun Apr 20 20:15:35 2014
Media Recovery Log /u01/app/Oracle/prod/arch/1_62_844894247.dbf
Media Recovery Waiting for thread 1 sequence 63
Sun Apr 20 20:15:46 2014
Redo Shipping Client Connected as PUBLIC
-- Connected User is Valid
RFS[6]: Assigned to RFS process 19968
RFS[6]: Identified database type as 'physical standby'
RFS[6]: Archived Log: '/u01/app/oracle/prod/arch/1_63_844894247.dbf'
Sun Apr 20 20:15:50 2014
Media Recovery Log /u01/app/oracle/prod/arch/1_63_844894247.dbf
Identified End-Of-Redo for thread 1 sequence 63
Sun Apr 20 20:15:50 2014
Media Recovery End-Of-Redo indicator encountered
Sun Apr 20 20:15:50 2014
Media Recovery Applied until change 373573 ---最后应用到的SCN
Sun Apr 20 20:15:50 2014
MRP0: Media Recovery Complete: End-Of-REDO (PROD)
Resetting standby activation ID 257246883 (0xf5546a3)
Sun Apr 20 20:15:51 2014
MRP0: Background Media Recovery process shutdown (PROD)----MEDIA RECOVERY PROCESS已经关闭
Sun Apr 20 20:16:21 2014
alter database recover managed standby database cancel
Sun Apr 20 20:16:21 2014
ORA-16136 signalled during: alter database recover managed standby database cancel...

相关参考:

Oracle Data Guard 重要配置参数

基于同一主机配置 Oracle 11g Data Guard

探索Oracle之11g DataGuard

Oracle Data Guard (RAC+DG) 归档删除策略及脚本

Oracle Data Guard 的角色转换

Oracle Data Guard的日志FAL gap问题

Oracle 11g Data Guard Error 16143 Heartbeat failed to connect to standby 处理方法

相关内容