eygle.com   eygle.com
eygle.com  
 

« January 25, 2010 | Blog首页 | January 29, 2010 »



January 26, 2010

ORA-07445 cold_qerfxArrayMaxSize 的Bug

作者:eygle

出处:http://blog.eygle.com

客户的10.2.0.2数据库遇到了这样一个问题:
Sat Jan 23 02:01:00 2010
Errors in file /CMP/saptrace/background/cmp_m000_26819.trc:
ORA-00081: address range [0x600000000009C450, 0x600000000009C454) is not readable
ORA-07445: exception encountered: core dump [$cold_qerfxArrayMaxSize()+7456] [SIGBUS] [Invalid address alignment] [0x00000002C] [] []

经过Metalink文档:386727.1 确认,这是一个Bug,仅见于HP-UX Itanium环境,在10.2.0.3中修正,一般不会带来严重影响。
在跟踪文件中记录了更为详尽的信息:
ksedmp: internal or fatal error
ORA-07445: exception encountered: core dump [$cold_qerfxArrayMaxSize()+7456] [SIGBUS] [Invalid address alignment] [0x00000002C] [] []
Current SQL statement for this session:
INSERT INTO wrh$_bg_event_summary
            (snap_id, dbid, instance_number, event_id, total_waits,
             total_timeouts, time_waited_micro)
   SELECT   /*+ ORDERED USE_NL(E) */
            :snap_id, :dbid, :instance_number, e.event_id,
            SUM (e.total_waits), SUM (e.total_timeouts),
            SUM (e.time_waited_micro)
       FROM v$session bgsids, v$session_event e
      WHERE bgsids.TYPE = 'BACKGROUND' AND bgsids.SID = e.SID
   GROUP BY e.event_id

不同的环境触发的SQL可能不同,但是通常ORA-07445和ORA-00081同时出现。
这是由于C编译器的问题导致的:
The problem is reported in <<bug:5382798>> and found to be an issue with the C compiler used on HP Itanium to compile the Oracle 10.2 code.

相应的Patch是: Patch:5442780

-The End-

Posted by eygle at 10:28 AM | Comments (2)


使用RMAN验证备份的有效性

作者:eygle

出处:http://blog.eygle.com

RMAN提供VALIDATE的命令,可以用于校验备份集的有效性,常用命令如下:
restore validate controlfile;
restore validate database;
验证命令会建议备份的存在性、完好性和可恢复性,帮助我们确认备份的有效与否。

比如验证控制文件和参数文件:
RMAN> restore validate controlfile;

Starting restore at 25-JAN-10
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: sid=388 devtype=DISK

channel ORA_DISK_1: starting validation of datafile backupset
channel ORA_DISK_1: reading from backup piece /opt/oracle/product/db10g/dbs/c-1341966532-20100125-01
channel ORA_DISK_1: restored backup piece 1
piece handle=/opt/oracle/product/db10g/dbs/c-1341966532-20100125-01 tag=TAG20100125T094817
channel ORA_DISK_1: validation complete, elapsed time: 00:00:02
Finished restore at 25-JAN-10

RMAN> restore validate spfile;

Starting restore at 25-JAN-10
using channel ORA_DISK_1

channel ORA_DISK_1: starting validation of datafile backupset
channel ORA_DISK_1: reading from backup piece /opt/oracle/product/db10g/dbs/c-1341966532-20100116-00
channel ORA_DISK_1: restored backup piece 1
piece handle=/opt/oracle/product/db10g/dbs/c-1341966532-20100116-00 tag=TAG20100116T033113
channel ORA_DISK_1: validation complete, elapsed time: 00:00:02
Finished restore at 25-JAN-10
验证全备份一般会很慢,谨慎试验:
RMAN> restore validate database;

Starting restore at 25-JAN-10
using channel ORA_DISK_1

data file 22 will be created automatically during restore operation
channel ORA_DISK_1: starting validation of datafile backupset
channel ORA_DISK_1: reading from backup piece /data3/ordrbak/orderfullback_order_20100124_4691
channel ORA_DISK_1: restored backup piece 1
piece handle=/data3/ordrbak/orderfullback_order_20100124_4691 tag=order
channel ORA_DISK_1: validation complete, elapsed time: 00:02:36
channel ORA_DISK_1: starting validation of datafile backupset
channel ORA_DISK_1: reading from backup piece /data3/ordrbak/orderfullback_order_20100124_4692
channel ORA_DISK_1: restored backup piece 1
piece handle=/data3/ordrbak/orderfullback_order_20100124_4692 tag=order
channel ORA_DISK_1: validation complete, elapsed time: 00:01:45
channel ORA_DISK_1: starting validation of datafile backupset
channel ORA_DISK_1: reading from backup piece /data3/ordrbak/orderfullback_order_20100124_4693
channel ORA_DISK_1: restored backup piece 1
piece handle=/data3/ordrbak/orderfullback_order_20100124_4693 tag=order
channel ORA_DISK_1: validation complete, elapsed time: 00:00:26
channel ORA_DISK_1: starting validation of datafile backupset
channel ORA_DISK_1: reading from backup piece /data3/ordrbak/orderfullback_order_20100124_4694
channel ORA_DISK_1: restored backup piece 1
piece handle=/data3/ordrbak/orderfullback_order_20100124_4694 tag=order
channel ORA_DISK_1: validation complete, elapsed time: 00:00:56
channel ORA_DISK_1: starting validation of datafile backupset
channel ORA_DISK_1: reading from backup piece /data3/ordrbak/orderfullback_order_20100124_4695
channel ORA_DISK_1: restored backup piece 1
piece handle=/data3/ordrbak/orderfullback_order_20100124_4695 tag=order
channel ORA_DISK_1: validation complete, elapsed time: 00:00:07
channel ORA_DISK_1: starting validation of datafile backupset
channel ORA_DISK_1: reading from backup piece /data3/ordrbak/orderfullback_order_20100124_4696
channel ORA_DISK_1: restored backup piece 1
piece handle=/data3/ordrbak/orderfullback_order_20100124_4696 tag=order
channel ORA_DISK_1: validation complete, elapsed time: 00:00:04
channel ORA_DISK_1: starting validation of datafile backupset
channel ORA_DISK_1: reading from backup piece /data3/ordrbak/orderfullback_order_20100124_4697
channel ORA_DISK_1: restored backup piece 1
piece handle=/data3/ordrbak/orderfullback_order_20100124_4697 tag=order
channel ORA_DISK_1: validation complete, elapsed time: 00:00:07
failover to previous backup

data file 22 will be created automatically during restore operation
Finished restore at 25-JAN-10
验证命令并不会真正执行恢复,所以可以减去异机测试等的麻烦。

-The End-




Posted by eygle at 8:01 AM | Comments (4)



CopyRight © 2004-2008 eygle.com, All rights reserved.