oracle bug

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中问题仍然存在,Oracle11g中改正了这个问题。

 

 

三:问题

   开启归档

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=true9i之后已经废弃不用,应该在参数文件中将这个参数去掉

凡是在参数文件中出现以下这条语句的都是废弃的参数

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

原因:11gjob,如何产生,如何删除,有什么作用?尚未查明

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/29785807/viewspace-1260300/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/29785807/viewspace-1260300/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值