某客戶今天告訴我,一套核心庫的備庫的日誌漲的很快,通過檢查發現alert log不斷的報錯,如下所示:
| 代碼如下 |
複製代碼 |
Fri Dec 11 20:48:37 2015 Incomplete read from log member '/arch2/2_82548_864474703.dbf'. Trying next member. Incomplete read from log member '/arch2/2_82548_864474703.dbf'. Trying next member.Archived Log entry 101817 added for thread 2 sequence 82548 ID 0xedd14d2a dest 1: Incomplete read from log member '/arch2/2_82548_864474703.dbf'. Trying next member. Errors in file /oracle/app/oracle/diag/rdbms/crmadg/crmdb2/trace/crmdb2_ora_15304.trc (incident=711224): ORA-00353: log corruption near block 900532 change 14410909668198 time 12/11/2015 20:42:40 ORA-00334: archived log: '/arch2/2_82548_864474703.dbf' Errors in file /oracle/app/oracle/diag/rdbms/crmadg/crmdb2/trace/crmdb2_ora_15305.trc (incident=711216): ORA-00353: log corruption near block 900532 change 14410909668198 time 12/11/2015 20:42:40 ORA-00334: archived log: '/arch2/2_82548_864474703.dbf' Fri Dec 11 20:48:37 2015 Errors in file /oracle/app/oracle/diag/rdbms/crmadg/crmdb2/trace/crmdb2_ora_13484.trc (incident=711238): ORA-00353: log corruption near block 900532 change 14410909668198 time 12/11/2015 20:42:40 ORA-00334: archived log: '/arch2/2_82548_864474703.dbf' Fri Dec 11 20:49:13 2015 Sweep [inc][711238]: completed |
查看其中的trace可以看到如下的內容:
| 代碼如下 |
複製代碼 |
*** ACTION NAME:() 2015-12-10 21:58:10.036 kcrfrxini: Limitread is not enabled for standby db kcrfrxini: Limitread is not enabled for standby db kcrfrxini: Limitread is not enabled for standby db
|
....
我google一把,發現居然毫無所獲。。。從alert log最開始報錯的時間點開始看,我懷疑跟最近部署的goldengate有關係。
後面我搜尋索引鍵ORA-00353 log corruption ogg extract 發現mos 論壇上有人遇到類似的問題,發帖者提到使用了如下的參數:
| 代碼如下 |
複製代碼 |
TranLogOptions DBLOGREADER TranLogOptions BUFSIZE 4096000 TranLogOptions DBLOGREADERBUFSIZE 4096000 |
該兄弟的環境為oracle 11.2.0.3 rac,ogg 版本為11.2.0.1.5;
最後據說通過將參數buffersize 、DBLOGREADERBUFSIZE 調小來解決該問題,最後貌似並沒有提到解決了,只是暫時未出現。
考慮到客戶這裡是Oracle 11.2.0.4環境,雖然是ASM環境,然而歸檔日誌都存放到本地檔案系統上。
再次檢查goldengate extract參數:
| 代碼如下 |
複製代碼 |
ogg_eda@xxx:/ogg_eda$ ./ggsci Oracle GoldenGate Command Interpreter for Oracle Version 11.2.1.0.27 19591627 OGGCORE_11.2.1.0.0OGGBP_PLATFORMS_141006.1156 HP/UX, IA64, 64bit (optimized), Oracle 11g on Oct 6 2014 13:37:58 Copyright (C) 1995, 2014, Oracle and/or its affiliates. All rights reserved. GGSCI (xxx) 2> info all Program Status Group Lag at Chkpt Time Since Chkpt MANAGER RUNNING EXTRACT RUNNING DPEODS1 00:00:00 00:00:00 EXTRACT RUNNING DPEODS2 00:00:00 00:00:00 EXTRACT RUNNING DPEODS3 00:00:00 00:00:07 EXTRACT RUNNING DPEODS4 00:00:00 00:00:08 EXTRACT RUNNING EXTODS1 00:00:00 00:00:06 EXTRACT RUNNING EXTODS2 00:00:00 00:00:00 EXTRACT RUNNING EXTODS3 00:00:00 00:00:03 EXTRACT RUNNING EXTODS4 00:00:00 00:00:03 GGSCI (xxx) 3> view param EXTODS1 EXTRACT extods1 setenv (NLS_LANG = "AMERICAN_AMERICA.ZHS16GBK") SETENV (ORACLE_HOME = "/oracle/app/oracle/product/11.2.0") SETENV (ORACLE_SID = "xxx2") USERID ogg_eda, PASSWORD AACAAAAAAAAAAAIARCQIHGOIWCQJXITB ,ENCRYPTKEY default TRANLOGOPTIONS ALTARCHIVELOGDEST primary instance crmdb2 /arch2,ALTARCHIVELOGDEST primary instance crmdb1 /arch2 TRANLOGOPTIONS ARCHIVEDLOGONLY TRANLOGOPTIONS ALTARCHIVEDLOGFORMAT %t_%s_%r.dbf TranlogOptions DBLOGREADER REPORTCOUNT EVERY 1 MINUTES, RATE DISCARDFILE ./dirrpt/extods1.dsc,APPEND,MEGABYTES 1024 DBOPTIONS ALLOWUNUSEDCOLUMN WARNLONGTRANS 2h,CHECKINTERVAL 3m EXTTRAIL ./dirdat/ods/o1 FETCHOPTIONS NOUSESNAPSHOT 。。。。。
|
由於是抽取active dataguard且僅僅抽取archivelog,因此完全沒有必要加入TranlogOptions DBLOGREADER參數。
這裡我懷疑跟該參數有關,通過屏蔽該參數後,發現不在報錯。看來這是GoldengGate的未知bug呀!