oracle bug

chenoracle發表於2014-08-29

2014-08-27 


一:問題

         每次在 用RMAN備份(正常完成)後,一段時間後都會在警告日誌檔案裡報errors;

 

環境:Linux X86平臺,Oracle 10.2.0.1.0;


[ oracle@p2ptestbdump]$ vim alert_zxp2p.log       

Tue Aug 12 08:44:19 2014

Errors in file/opt/ora10/product/admin/fenbay/udump/fenbay_ora_5748.trc:

Tue Aug 12 08:44:19 2014

Errors in file/opt/ora10/product/admin/fenbay/udump/fenbay_ora_5748.trc:

Tue Aug 12 08:44:19 2014

Errors in file/opt/ora10/product/admin/fenbay/udump/fenbay_ora_5748.trc:

Tue Aug 12 08:52:00 2014


原因:

在metalink上找到答案,


CAUSE DETERMINATION

====================

This issue is caused by Bug 4596065, RMAN backup generates empty trace files when DB_RECOVERY_FILE_DEST is set.


CAUSE JUSTIFICATION

====================

The following justifies how the issue is related to this specific customer:

1. For this customer, during RMAN backup, empty trace files are generated.

2. This customer has set DB_RECOVERY_FILE_DEST.


This is explained in the following bug:

Bug 4596065: RMAN backup generates empty trace files when DB_RECOVERY_FILE_DEST is set


PROPOSED SOLUTION(S)

======================

1. Upgrade to 10.2.0.4.

~Or~

2. Ignore the message.


PROPOSED SOLUTION JUSTIFICATION(S)

====================================

These solutions are provided by Metalink Note:

Note.4596065.8 Bug 4596065 - RMAN backup generates empty trace files when DB_RECOVERY_FILE_DEST is set


This Bug is fixed on 10.2.0.2.

These messages can be ignored because it is harmless.

 此問題是10.2.0.2的一個bug,可以忽略;

 

 

二 問題

         每次在 RMAN 備份後,檢查備份有效性時都會出現“對歸檔日誌的驗證失敗”


環境:

Linux X86平臺,Oracle 10.2.0.1.0;

 

RMAN> crosscheck archivelog all;

釋放的通道: ORA_DISK_1

分配的通道: ORA_DISK_1

通道 ORA_DISK_1: sid=121 devtype=DISK

對歸檔日誌的驗證失敗

存檔日誌檔名 =/opt/ora10/product/arclog/1_3267_705498913.dbf 記錄 ID=1192 時間戳=855486040

 

原因: RMAN CROSSCHECK 命令小 bug

看下面的例子:

E:>SET ORACLE_HOME=E:ORACLEORACLE920

E:>%ORACLE_HOME%binrman target /@ytk92

恢復管理器: 版本9.2.0.4.0 - Production

Copyright (c) 1995, 2002, Oracle Corporation. All rights reserved.

連線到目標資料庫: YTK92 (DBID=1285986946)

RMAN> crosscheck archivelog all;

正在使用目標資料庫控制檔案替代恢復目錄

分配的通道: ORA_DISK_1通道 ORA_DISK_1: sid=16 devtype=DISK

對歸檔日誌的驗證成功

存檔日誌檔名 =E:ORACLEORADATAYTK92ARCHIVE1_9.DBF 記錄 ID=1 時間戳 =630202142對歸檔日誌的驗證成功

存檔日誌檔名 =E:ORACLEORADATAYTK92ARCHIVE1_10.DBF 記錄 ID=2 時間戳 =631117292對歸檔日誌的驗證成功

存檔日誌檔名 =E:ORACLEORADATAYTK92ARCHIVE1_11.DBF 記錄 ID=3 時間戳 =631459376對歸檔日誌的驗證成功

存檔日誌檔名 =E:ORACLEORADATAYTK92ARCHIVE1_12.DBF 記錄 ID=4 時間戳 =634003780

對歸檔日誌的驗證成功

存檔日誌檔名 =E:ORACLEORADATAYTK92ARCHIVE1_13.DBF 記錄 ID=5 時間戳 =635334356

對歸檔日誌的驗證失敗存

檔日誌檔名 =E:ORACLEORADATAYTK92ARCHIVE1_14.DBF 記錄 ID=6 時間戳 =636374339對歸檔日誌的驗證失敗

存檔日誌檔名 =E:ORACLEORADATAYTK92ARCHIVE1_15.DBF 記錄 ID=7 時間戳 =636636080

對歸檔日誌的驗證失敗

存檔日誌檔名 =E:ORACLEORADATAYTK92ARCHIVE1_16.DBF 記錄 ID=8 時間戳 =637149058

對歸檔日誌的驗證失敗

存檔日誌檔名 =E:ORACLEORADATAYTK92ARCHIVE1_17.DBF 記錄 ID=9 時間戳 =638414429

對歸檔日誌的驗證失敗

存檔日誌檔名 =E:ORACLEORADATAYTK92ARCHIVE1_18.DBF 記錄 ID=10 時間戳 =640227158已交叉檢驗的 10 物件

RMAN> exit

恢復管理器完成。

E:>SET NLS_LANG=AMERICAN

E:>%ORACLE_HOME%binrman target /@ytk92

Recovery Manager: Release 9.2.0.4.0 - Production

Copyright (c) 1995, 2002, Oracle Corporation. All rights reserved.

connected to target database: YTK92 (DBID=1285986946)

RMAN> crosscheck archivelog all;

using target database controlfile instead of recovery catalog

allocated channel: ORA_DISK_1

channel ORA_DISK_1: sid=15 devtype=DISK

validation failed for archived log

archive log filename=E:ORACLEORADATAYTK92ARCHIVE1_9.DBF recid=1 stamp=630202142

validation failed for archived log

archive log filename=E:ORACLEORADATAYTK92ARCHIVE1_10.DBF recid=2 stamp=631117292

validation failed for archived log

archive log filename=E:ORACLEORADATAYTK92ARCHIVE1_11.DBF recid=3 stamp=631459376

validation failed for archived log

archive log filename=E:ORACLEORADATAYTK92ARCHIVE1_12.DBF recid=4 stamp=634003780

validation failed for archived log

archive log filename=E:ORACLEORADATAYTK92ARCHIVE1_13.DBF recid=5 stamp=635334356

validation succeeded for archived log

archive log filename=E:ORACLEORADATAYTK92ARCHIVE1_14.DBF recid=6 stamp=636374339

validation succeeded for archived log

archive log filename=E:ORACLEORADATAYTK92ARCHIVE1_15.DBF recid=7 stamp=636636080

validation succeeded for archived log

archive log filename=E:ORACLEORADATAYTK92ARCHIVE1_16.DBF recid=8 stamp=637149058

validation succeeded for archived log

archive log filename=E:ORACLEORADATAYTK92ARCHIVE1_17.DBF recid=9 stamp=638414429

validation succeeded for archived log

archive log filename=E:ORACLEORADATAYTK92ARCHIVE1_18.DBF recid=10 stamp=640227158

Crosschecked 10 objects

很明顯中文翻譯和英文的原文是反著的。英文的failed被翻譯為成功,英文的succeeded被翻譯為失敗。

檢查實際情況:

E:>DIR E:ORACLEORADATAYTK92ARCHIVE

驅動器 E 中的卷沒有標籤。

卷的序列號是 9037-19E7

E:ORACLEORADATAYTK92ARCHIVE 的目錄

2007-12-02 00:52  .

2007-12-02 00:52  ..

2007-10-19 10:38 49,586,176 1_14.DBF

2007-10-22 11:21 104,857,088 1_15.DBF

2007-10-28 09:50 104,857,088 1_16.DBF

2007-11-12 01:20 64,443,392 1_17.DBF

2007-12-02 00:52 7,100,928 1_18.DBF

5 個檔案 330,844,672 位元組

2 個目錄 10,308,681,728 可用位元組

看來英文原文並沒有錯誤,是翻譯為中文的時候出的問題。這個問題說小就小,幾乎可以忽略;說大也大,如果被這個提示誤導,手工把存在的歸檔日誌當作丟失的刪除掉,那麼問題就比較嚴重了。總之,這個問題是個很低階的錯誤。

10g 中問題仍然存在, Oracle 11g 中改正了這個問題。

 

 

三:問題

   開啟歸檔

SQL> alter system set log_archive_start=true scope=spfile;

SQL> alter system set log_archive_format='orcl_%t%r_%s.arc' scope=spfile;

SQL> alter system set log_archive_dest_1='location=/home/oracle/test' scope=spfile;

SQL>shutdown immediate

SQL>startup mount

SQL>alter database archivelog;

SQL>alter database open;  

命令成功執行後

SQL>alter system switch logfile;

切換日誌後,在歸檔目錄下/home/oracle/test下並沒有產生歸檔

並且檢視警告日誌檔案發現有錯誤

[oracle@pierscentos log]$ vim alert_orcl.log

Tue Aug 26 08:30:31 2014

ORA-00294: invalid archivelog format specifier 'r'

 

環境: oracle 9.0.1.0.0  Red Hat Enterprise Linux Server release 5.5

 

原因:

******************************************************************************

因為引數設定有誤 (在10G裡才有 %r ),那麼我們把引數裡去掉 %r

SQL> alter system set log_archive_format='orcl_%t_%s.arc' scope=spfile;

系統已更改。

*******************************************************************************

 

四:問題

啟動歸檔時

SQL> alter system set log_archive_start=true scope=spfile;

SQL> alter system set log_archive_format='orcl_%t%r_%s.arc' scope=spfile;

SQL> alter system set log_archive_dest_1='location=/home/oracle/test' scope=spfile;

SQL>shutdown immediate

SQL>startup mount

ORA-32004: obsolete or deprecated parameter(s) specified for RDBMS instance

ORACLE instance started.

 

Total System Global Area  768294912 bytes

Fixed Size              2232312 bytes

Variable Size                524288008 bytes

Database Buffers      234881024 bytes

Redo Buffers                 6893568 bytes

Database mounted.

 

環境:oracle11g

 

原因:引數log_archive_start=true在9i之後已經廢棄不用,應該在引數檔案中將這個引數去掉

凡是在引數檔案中出現以下這條語句的都是廢棄的引數

Deprecated system parameters with specified values:


五:問題

檢視 alert_orcl.log 檔案時出現

Wed Aug 13 22:00:00 2014

Begin automatic SQL TuningAdvisor run for special tuning task "SYS_AUTO_SQL_TUNING_TASK"

End automatic SQL Tuning Advisorrun for special tuning task "SYS_AUTO_SQL_TUNING_TASK"

Thu Aug 14 02:00:00 2014

Clearing Resource Manager plan viaparameter

Thu Aug 14 05:00:25 2014

Thread 1 advanced to log sequence 357 (LGWRswitch)

Current log# 1 seq# 357 mem# 0: /u01/app/oracle/oradata/orcl/redo01.log

Thu Aug 14 05:00:26 2014

Archived Log entry 340 added for thread 1sequence 356 ID 0x50dabe03 dest 1:

 

環境 Red Hat Enterprise Linux Server release 5.8    oracle 11.2.0.1

原因:11g的job,如何產生,如何刪除,有什麼作用?尚未查明

 歡迎關注我的微信公眾號"IT小Chen",共同學習,共同成長!!!

oracle bug

oracle bug



來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29785807/viewspace-1260300/,如需轉載,請註明出處,否則將追究法律責任。

相關文章