Logon database Tiger引起DataGuard不同步问题
当DataGuard升级CPU后。发现主备库不能同步了,日志报错,所以在主库的运行的升级的后脚本“@catbundle.sql cpu apply”不能同步到备库
现象:
broker状态:
[oracle@webdb2 ~]$ dgmgrl sys/oracle
DGMGRL for Linux: Version 11.2.0.3.0 -64bit Production
Copyright (c) 2000, 2009, Oracle. Allrights reserved.
欢迎使用 DGMGRL, 要获取有关信息请键入 "help"。
已连接。
DGMGRL> show configuration
配置 - webdb
保护模式: MaxAvailability
数据库:
webdb - 主数据库
webdb2 - 物理备用数据库
高速启动故障转移: DISABLED
配置状态:
ORA-16664: 无法从数据库接收结果
DGM-17017: 无法确定配置状态
--查看主库状态:
SQL> Select timestamp, message FROMV$DATAGUARD_STATUS Where Rownum < 5;
TIMESTAMP MESSAGE
-------------------------------------------------------------------------------------------
2014-10-23 Error 604 received logging on to the standby
2014-10-23 PING[ARC2]: Heartbeat failed to connect tostandby'(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=webdb2)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=webdb2)(SERVER=DEDICATED)))'.Error is 604.
2014-10-23 Error 604 received logging on to the standby
2014-10-23 PING[ARC2]: Heartbeat failed to connect to standby'(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=webdb2)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=webdb2)(SERVER=DEDICATED)))'.Error is 604.
--此时查看日志
主库日志:
ORA-00604: 递归 SQL 级别 1 出现错误
ORA-20154: TNS: 监听程序当前无法识别连接描写叙述符中请求的服务
ORA-06512: 在 line 29
Thu Oct 23 00:25:52 2014
Errors in file/u01/app/ora11g/diag/rdbms/webdb/webdb/trace/webdb_ora_18833.trc:
ORA-00604: 递归 SQL
级别 1 出现错误
ORA-20154: TNS: 监听程序当前无法识别连接描写叙述符中请求的服务
ORA-06512: 在 line 29
Thu Oct 23 00:25:52 2014
Errors in file/u01/app/ora11g/diag/rdbms/webdb/webdb/trace/webdb_ora_18842.trc:
ORA-00604: 递归 SQL 级别 1 出现错误
ORA-20154: TNS: 监听程序当前无法识别连接描写叙述符中请求的服务
ORA-06512: 在 line 29
Thu Oct 23 00:25:53 2014
Error 604 receivedlogging on to the standby
PING[ARC2]: Heartbeatfailed to connect to standby'(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=webdb2)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=webdb2)(SERVER=DEDICATED)))'.Error is 604.
Thu Oct 23 00:26:12 2014
Errors in file /u01/app/ora11g/diag/rdbms/webdb/webdb/trace/webdb_ora_18961.trc:
ORA-00604: 递归 SQL 级别 1 出现错误
ORA-20154: TNS: 监听程序当前无法识别连接描写叙述符中请求的服务
ORA-06512: 在 line 29
备库日志:
ORA-00604: 递归 SQL
级别 1 出现错误
ORA-16000: 打开数据库以进行仅仅读訪问
ORA-06512: 在 line 3
Thu Oct 23 00:27:39 2014
Errors in file /u01/app/ora11g/diag/rdbms/webdb2/webdb2/trace/webdb2_ora_30130.trc:
ORA-00604: 递归 SQL
级别 1 出现错误
ORA-20154: TNS: 监听程序当前无法识别连接描写叙述符中请求的服务
ORA-06512: 在 line 29
Errors in file/u01/app/ora11g/diag/rdbms/webdb2/webdb2/trace/webdb2_ora_30130.trc:
ORA-00604: 递归 SQL 级别 1 出现错误
ORA-16000: 打开数据库以进行仅仅读訪问
ORA-06512: 在 line 3
--进一步查看trace文件
主库trace:
[oracle@webdb1 trace]$ more/u01/app/ora11g/diag/rdbms/webdb/webdb/trace/webdb_ora_8589.trc
Trace file/u01/app/ora11g/diag/rdbms/webdb/webdb/trace/webdb_ora_8589.trc
Oracle Database 11g Enterprise EditionRelease 11.2.0.3.0 - 64bit Production
With the Partitioning, Automatic StorageManagement, OLAP, Data Mining
and Real Application Testing options
ORACLE_HOME =/u01/app/ora11g/product/11.2.0/db_1
System name: Linux
Node name: webdb1
Release: 2.6.32-200.13.1.el5uek
Version: #1 SMP Wed Jul 27 21:02:33 EDT 2011
Machine: x86_64
Instance name: webdb
Redo thread mounted by this instance: 1
Oracle process number: 176
Unix process pid: 8589, image:oracle@webdb1
*** 2014-10-14 13:19:18.860
*** SESSION ID:(21.12621) 2014-10-1413:19:18.860
*** CLIENT ID:() 2014-10-14 13:19:18.860
*** SERVICE NAME:(SYS$USERS) 2014-10-1413:19:18.860
*** MODULE NAME:(emagent@webdb1 (TNSV1-V3)) 2014-10-14 13:19:18.860
*** ACTION NAME:() 2014-10-14 13:19:18.860
Error in executing triggers on connectinternal
*** 2014-10-14 13:19:18.861
dbkedDefDump(): Starting a non-incidentdiagnostic dump (flags=0x0, level=0, mask=0x0)
----- Error Stack Dump -----
ORA-00604: 递归 SQL
级别 1 出现错误
ORA-20154: TNS: 监听程序当前无法识别连接描写叙述符中请求的服务
ORA-06512: 在 line 28
Trace file/u01/app/ora11g/diag/rdbms/webdb/webdb/trace/webdb_ora_8589.trc
Oracle Database 11g Enterprise EditionRelease 11.2.0.3.0 - 64bit Production
With the Partitioning, Automatic StorageManagement, OLAP, Data Mining
and Real Application Testing options
ORACLE_HOME =/u01/app/ora11g/product/11.2.0/db_1
System name: Linux
Node name: webdb1
Release: 2.6.32-200.13.1.el5uek
Version: #1 SMP Wed Jul 27 21:02:33 EDT 2011
Machine: x86_64
Instance name: webdb
Redo thread mounted by this instance: 1
Oracle process number: 163
Unix process pid: 8589, image:oracle@webdb1
备库trace:
[oracle@webdb2 trace]$ more/u01/app/ora11g/diag/rdbms/webdb2/webdb2/trace/webdb2_ora_29791.trc
Trace file/u01/app/ora11g/diag/rdbms/webdb2/webdb2/trace/webdb2_ora_29791.trc
Oracle Database 11g Enterprise EditionRelease 11.2.0.3.0 - 64bit Production
With the Partitioning, Automatic StorageManagement, OLAP, Data Mining
and Real Application Testing options
ORACLE_HOME =/u01/app/ora11g/product/11.2.0/db_1
System name: Linux
Node name: webdb2
Release: 2.6.32-200.13.1.el5uek
Version: #1 SMP Wed Jul 27 21:02:33 EDT 2011
Machine: x86_64
Instance name: webdb2
Redo thread mounted by this instance: 1
Oracle process number: 22
Unix process pid: 29791, image:oracle@webdb2
*** 2014-10-23 11:30:21.649
*** SESSION ID:(854.10603) 2014-10-2311:30:21.649
*** CLIENT ID:() 2014-10-23 11:30:21.649
*** SERVICE NAME:(SYS$USERS) 2014-10-2311:30:21.649
*** MODULE NAME:(emagent@webdb2 (TNSV1-V3)) 2014-10-23 11:30:21.649
*** ACTION NAME:() 2014-10-23 11:30:21.649
Error in executing triggers on connectinternal
*** 2014-10-23 11:30:21.649
dbkedDefDump(): Starting a non-incidentdiagnostic dump (flags=0x0, level=0, mask=0x0)
----- Error Stack Dump -----
ORA-00604: 递归 SQL 级别 1 出现错误
ORA-20154: TNS: 监听程序当前无法识别连接描写叙述符中请求的服务
ORA-06512: 在 line 29
Error in executing triggers on connectinternal
*** 2014-10-23 11:30:21.650
dbkedDefDump(): Starting a non-incidentdiagnostic dump (flags=0x0, level=0, mask=0x0)
----- Error Stack Dump -----
ORA-00604: 递归 SQL 级别 1 出现错误
ORA-16000: 打开数据库以进行仅仅读訪问
ORA-06512: 在 line 3
分析:
能够从看到trace log中看到都与tiger运行有关。于是想到在主库是创建过的两个 logon on database tiger
解决的方法:
--禁用登录tiger
把一个登录IP限制的tiger的禁用后,主库的
ORA-00604: 递归 SQL 级别 1 出现错误
ORA-20154: TNS: 监听程序当前无法识别连接描写叙述符中请求的服务
报错消失。仅仅剩下以下的报错:
Error 604 received logging on to thestandby
PING[ARC2]: Heartbeat failed to connect tostandby'(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=webdb2)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=webdb2)(SERVER=DEDICATED)))'.Error is 604.
备库依旧报错
--启动备库到mount状态
SQL> shutdown immediate
SQL> startup mount
ORACLE 例程已经启动。
Total System Global Area 1.0456E+10 bytes
Fixed Size 2237488 bytes
Variable Size 5435821008 bytes
Database Buffers 4999610368 bytes
Redo Buffers 17973248 bytes
数据库装载完成。
SQL> select open_mode from v$database;
OPEN_MODE
--------------------
MOUNTED
--查看日志
主库:
Thu Oct 23 13:45:15 2014
Archived Log entry 2225 added for thread 1sequence 1122 ID 0xc8d579d3 dest 1:
ARC3: Standby redo logfile selected forthread 1 sequence 1122 for destination LOG_ARCHIVE_DEST_2
Thu Oct 23 13:46:46 2014
ARC3: Archive log rejected (thread 1sequence 1120) at host'(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=webdb2)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=webdb2)(SERVER=DEDICATED)))'
Thu Oct 23 13:46:46 2014
ARC0: Archive log rejected (thread 1sequence 1121) at host'(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=webdb2)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=webdb2)(SERVER=DEDICATED)))'
FAL[server, ARC3]: FAL archive failed, seetrace file.
ARCH: FAL archive failed. Archivercontinuing
ORACLE Instance webdb - Archival Error.Archiver continuing.
FAL[server, ARC0]: FAL archive failed, seetrace file.
ARCH: FAL archive failed. Archivercontinuing
ORACLE Instance webdb - Archival Error.Archiver continuing.
Thu Oct 23 13:46:49 2014
Destination LOG_ARCHIVE_DEST_2 isSYNCHRONIZED
LGWR: Standby redo logfile selected toarchive thread 1 sequence 1124
LGWR: Standby redo logfile selected forthread 1 sequence 1124 for destination LOG_ARCHIVE_DEST_2
Thread 1 advanced to log sequence 1124(LGWR switch)
Current log# 2 seq# 1124 mem# 0:+DATA/webdb/onlinelog/group_2.262.819826783
Current log# 2 seq# 1124 mem# 1:+FRA/webdb/onlinelog/group_2.258.819826785
Archived Log entry 2244 added for thread 1sequence 1123 ID 0xc8d579d3 dest 1
备库:
Using STANDBY_ARCHIVE_DEST parameterdefault value as USE_DB_RECOVERY_FILE_DEST
Thu Oct 23 13:45:15 2014
RFS[1]: Assigned to RFS process 17293
RFS[1]: Opened log for thread 1 sequence1102 dbid -925543465 branch 819826777
Thu Oct 23 13:45:15 2014
Primary database is in MAXIMUM AVAILABILITYmode
Standby controlfile consistent with primary
Standby controlfile consistent with primary
RFS[2]: Assigned to RFS process 17297
RFS[2]: Selected log 7 for thread 1sequence 1123 dbid -925543465 branch 819826777
Deleted Oracle managed file+FRA/webdb2/archivelog/2014_10_13/thread_1_seq_1049.350.860808821
Archived Log entry 1104 added for thread 1sequence 1102 rlc 819826777 ID 0xc8d579d3 dest 2:
能够看到主备库恢复心跳。备库能恢复应用日志
打开备库操作:
SQL> alter database open;
数据库已更改。
SQL> select open_mode from v$database;
OPEN_MODE
--------------------
READ ONLY
SQL> ALTER DATABASE RECOVER MANAGEDSTANDBY DATABASE USING CURRENT LOGFILE DISCONNECT;
ALTER DATABASE RECOVER MANAGED STANDBYDATABASE USING CURRENT LOGFILE DISCONNECT
*
第 1 行出现错误:
ORA-01153: 激活了不兼容的介质恢复
SQL> select open_mode from v$database;
OPEN_MODE
--------------------
READ ONLY WITH APPLY
--主库切换日志
SQL> alter system switch logfile;
系统已更改。
--查看日志
主库:
Thu Oct 23 14:19:52 2014
LGWR: Standby redo logfile selected toarchive thread 1 sequence 1125
LGWR: Standby redo logfile selected forthread 1 sequence 1125 for destination LOG_ARCHIVE_DEST_2
Thread 1 advanced to log sequence 1125(LGWR switch)
Current log# 3 seq# 1125 mem# 0:+DATA/webdb/onlinelog/group_3.263.819826787
Current log# 3 seq# 1125 mem# 1:+FRA/webdb/onlinelog/group_3.259.819826789
Thu Oct 23 14:19:53 2014
Archived Log entry 2246 added for thread 1sequence 1124 ID 0xc8d579d3 dest 1:
备库:
Completed: ALTER DATABASE RECOVER MANAGEDSTANDBY DATABASE THROUGH ALL SWITCHOVERDISCONNECT USING CURRENT LOGFILE
Thu Oct 23 14:15:51 2014
ALTER DATABASE RECOVER MANAGED STANDBYDATABASE USING CURRENT LOGFILE DISCONNECT
ORA-1153 signalled during: ALTER DATABASERECOVER MANAGED STANDBY DATABASE USING CURRENT LOGFILE DISCONNECT...
Thu Oct 23 14:19:52 2014
Standby controlfile consistent with primary
RFS[2]: Selected log 7 for thread 1sequence 1125 dbid -925543465 branch 819826777
Thu Oct 23 14:19:52 2014
Archived Log entry 1123 added for thread 1sequence 1124 ID 0xc8d579d3 dest 1:
Thu Oct 23 14:19:52 2014
Media Recovery Waiting for thread 1sequence 1125 (in transit)
Recovery of Online Redo Log: Thread 1 Group7 Seq 1125 Reading mem 0
Mem# 0: +DATA/webdb2/onlinelog/group_7.282.819884421
Mem# 1: +FRA/webdb2/onlinelog/group_7.278.819884423
能够看到在仅仅读应用状态open备库后。日志应用仍然正常
--查看DataGuard状态
[oracle@webdb1 trace]$ dgmgrl sys/oracle
DGMGRL for Linux: Version 11.2.0.3.0 -64bit Production
Copyright (c) 2000, 2009, Oracle. Allrights reserved.
欢迎使用 DGMGRL, 要获取有关信息请键入 "help"。
已连接。
DGMGRL> show configuration
配置 - webdb
保护模式: MaxAvailability
数据库:
webdb - 主数据库
webdb2 - 物理备用数据库
高速启动故障转移: DISABLED
配置状态:
SUCCESS
总结:
通过报错分析看到,主备不同步跟CPU补丁升级没有直接关系,跟创建的logon on database 触发器有关。
假设在主数据创建一个logon on database tiger。可能会引起主备库不能同步传输日志的问题,
这时。我们要做是把备库又一次mount,然后再open到仅仅读应用状态(READ ONLY WITH APPLY)
由于当备库重新启动后,备库直接启动到仅仅读应用状态(READ ONLY WITH APPLY)。就会出现上面的问题。
參考:
http://www.cnblogs.com/Spiritual-journey/archive/2012/10/21/2732806.html
Logon database Tiger引起DataGuard不同步问题的更多相关文章
- 使用Oracle 11g新特性 Active Database Duplication 搭建Dataguard环境
Duplication Database 介绍 Duplicate database可以按照用途分为2种: duplicate database(复制出一个数据库) duplicate standby ...
- dataguard不同步问题ora-16191解决
公司的11g的dataguard主备不同步,检查步骤如下: Primary:查询主库的最大日志 SQL> select max(sequence#) from v$archived_log;SQ ...
- Oracle Database 12c Using duplicate standby database from active database Created Active DataGuard
primary database db_name=zwc, db_unique_name=zwc standby database db_name=zwc, db_unique_name=standb ...
- 11g数据库查看dataguard是否同步
一.环境 主库: ip地址:192.168.122.203 oracle根目录:/data/db/oracle SID:qyq 数据文件路径/ ...
- Oracle 10g DataGuard手记之基础配置
DataGuard为企业数据的高可用性,数据安全以及灾难恢复提供支持,一般由一个primary db与几个物理或逻辑standby db组成一个DataGuard配置. 系统环境 操作系统为windo ...
- Oracle 11.2.0.4.0 Dataguard部署和日常维护(2)-Datauard部署篇
1. primary库设置dataguard相关参数 1.1. 强制primay库在任何状态下必须记录日志 SYS@userdata>select FORCE_LOGGING from v$ ...
- 12.2 中的Data Guard Standby 密码文件自动同步 (Doc ID 2307365.1)
Data Guard Standby Automatic Password file Synchronization in 12.2 (Doc ID 2307365.1) APPLIES TO: Or ...
- Oracle DataGuard主库丢失归档日志后备库的RMAN增量恢复一例
第一部分 问题描述和环境状态确认 ----1. 问题场景 Oracle DataGuard主库丢失archivelog,如何不重建备库完成同步? 在Oracle DataGuard主从同步过程中可能 ...
- DG_Oracle DataGuard作用和概念(概念)
2014-06-03 Created By BaoXinjian
随机推荐
- 使用log4j输出日志
今天在倒腾log4j,其实蛮简单的. 一.首先是下载log4j的jar包. 二.将下载的jar包添加到web工程的WEB-INF/lib包下 三.在src/config包下新建log4j.proper ...
- CentOS 7中以runfile形式安装CUDA 9.0
GPU: NVIDIA Tesla K40C Enter the 'root' mode: $ su - 1. Pre-installation 1.1 Verify you have a CUDA- ...
- java学习助手
感谢大家使用Java学习助手! 打一开始,这应用就是全开源,希望大家自觉遵循开源协议,还Android开发一片净土(国内的情况你懂的) 接下来都不会更频繁更新文章,大家更应该把注意力放在基础的模块那里 ...
- Inno Setup Winfrom 打包工具
1.下载并安装Inno Setup 编译器 2.安装完成后打开Inno Setup 编译器: 3.选择[用「脚本向导」创建新的脚本文件(S)]: 4.点击[下一步]: 5.填写制作后程序的基本信息: ...
- poj 2912 并查集(食物链加强版)
题目:给出n个人玩剪刀石头布的游戏,其中有一个人是裁判,剩下的人分为3组,每一组的人只出某一种手型,裁判可以任意出.问是否能判断出哪个人是裁判 链接:点我 分分钟看吐血,先把食物链看懂吧 枚举裁判,然 ...
- 对Java Serializable(序列化)的理解和总结(二)
遇到这个 Java Serializable 序列化这个接口,我们可能会有如下的问题a,什么叫序列化和反序列化 b,作用.为啥要实现这个 Serializable 接口,也就是为啥要序列化 c,ser ...
- Vue组件深入了解(组件注册和Prop)
一.组件名 自定义组件的名称强烈推荐遵循W3C规范中的方式:字母全小写且必须包含一个连字符. 二.全局注册和局部注册的区别 全局注册 Vue.component进行注册.全局注册的可以在任何创建的实例 ...
- CROC 2016 - Elimination Round (Rated Unofficial Edition) E. Intellectual Inquiry 贪心 构造 dp
E. Intellectual Inquiry 题目连接: http://www.codeforces.com/contest/655/problem/E Description After gett ...
- 使用Spring配置shiro时,自定义Realm中属性无法使用注解注入解决办法
先来看问题 纠结了几个小时终于找到了问题所在,因为shiro的realm属于Filter,简单说就是初始化realm时,spring还未加载相关业务Bean,那么解决办法就是将springmvc ...
- Jackson工具类使用及配置指南、高性能配置(转)
Jackson使用工具类 通常,我们对JSON格式的数据,只会进行解析和封装两种,也就是JSON字符串--->Java对象以及Java对象--->JSON字符串. public class ...