Skip to Main Content

Chinese

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

[代发帖子]10g RAC (raw) 迁移到 11g RAC(ASM) , ASM diskgroup corrupted

Maclean LiuAug 22 2012 — edited Aug 23 2012
代网友发一个帖子,以下为帖子内容




Hi, 各位
在做一个Oracle 10g RAC(raw devices) 到 Oracle 11g RAC(ASM) 以rman方式迁移的时候,碰到了个问题:
在把10g备份恢复到11g之后,由于之前的redo log指向是裸设备,所以,在ASM相应的disk group建立了一些之后要用的redo log files。但是一旦建立就发生 ASM的corrupted. 导致disk group直接dismount.

OS: Redhat Enterprise Linux 5.4 64bit
源库: Oracle 10g(10.2.0.4) RAC (raw devices)
目标库: Oracle 11g(11.2.0.3) RAC(ASM)

升级的步骤大概如下:
============================================================================
-1. 源库: 运行 utlu112i_5.sql, 检查是否都满足升级到是11g的条件。
-2. 源库: 备份源库
-3. 目标库: 安装oracle 11g RAC
-4. 目标库: 用源库备份restore和recover目标库

-5. 目标库: 一些调整工作(例如,把redo日志的路径从原来的裸设备弄到ASM相应的disk group),最终是为了能执行下面的语句:

alter database open resetlogs upgrade


-6. 目标库: 升级目标库的数据字典
-7. 目标库: 测试目标库的可用性

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



现在进行到第5步的时候,有如下报错:

这是在操作升级的节点中的问题发生时的日志:

alert_+ASM2.log
=====================
复制内容到剪贴板
代码:
Tue Aug 21 21:48:31 2012
WARNING: cache read  a corrupt block: group=1(DG_DATA) dsk=1 blk=4 disk=1 (DG_DATA_0001) incarn=3915931844 au=0 blk=4 count=1
Errors in file /u01/app/oracle/diag/asm/+asm/+ASM2/trace/+ASM2_ora_20359.trc:
ORA-15196: invalid ASM block header [kfc.c:26076] [hard_kfbh] [2147483649] [4] [34 != 130]
NOTE: a corrupted block from group DG_DATA was dumped to /u01/app/oracle/diag/asm/+asm/+ASM2/trace/+ASM2_ora_20359.trc
WARNING: cache read (retry) a corrupt block: group=1(DG_DATA) dsk=1 blk=4 disk=1 (DG_DATA_0001) incarn=3915931844 au=0 blk=4 count=1
Errors in file /u01/app/oracle/diag/asm/+asm/+ASM2/trace/+ASM2_ora_20359.trc:
ORA-15196: invalid ASM block header [kfc.c:26076] [hard_kfbh] [2147483649] [4] [34 != 130]
ORA-15196: invalid ASM block header [kfc.c:26076] [hard_kfbh] [2147483649] [4] [34 != 130]
ERROR: cache failed to read group=1(DG_DATA) dsk=1 blk=4 from disk(s): 1(DG_DATA_0001)
ORA-15196: invalid ASM block header [kfc.c:26076] [hard_kfbh] [2147483649] [4] [34 != 130]
ORA-15196: invalid ASM block header [kfc.c:26076] [hard_kfbh] [2147483649] [4] [34 != 130]
NOTE: cache initiating offline of disk 1 group DG_DATA
NOTE: process _user20359_+asm2 (20359) initiating offline of disk 1.3915931844 (DG_DATA_0001) with mask 0x7e in group 1
WARNING: Disk 1 (DG_DATA_0001) in group 1 in mode 0x7f is now being taken offline on ASM inst 2
NOTE: initiating PST update: grp = 1, dsk = 1/0xe96860c4, mask = 0x6a, op = clear
Tue Aug 21 21:48:31 2012
GMON updating disk modes for group 1 at 21 for pid 35, osid 20359
ERROR: Disk 1 cannot be offlined, since diskgroup has external redundancy.
ERROR: too many offline disks in PST (grp 1)
WARNING: Offline of disk 1 (DG_DATA_0001) in group 1 and mode 0x7f failed on ASM inst 2
Tue Aug 21 21:48:31 2012
NOTE: halting all I/Os to diskgroup 1 (DG_DATA)
Tue Aug 21 21:48:31 2012
NOTE: cache dismounting (not clean) group 1/0x3B08906D (DG_DATA) 
NOTE: messaging CKPT to quiesce pins Unix process pid: 21477, image: oracle@rac11 (B000)
System State dumped to trace file /u01/app/oracle/diag/asm/+asm/+ASM2/trace/+ASM2_ora_20359.trc
Tue Aug 21 21:48:32 2012
ERROR: ORA-15130 in COD recovery for diskgroup 1/0x3b08906d (DG_DATA)
ERROR: ORA-15130 thrown in RBAL for group number 1
Errors in file /u01/app/oracle/diag/asm/+asm/+ASM2/trace/+ASM2_rbal_4839.trc:
ORA-15130: diskgroup "DG_DATA" is being dismounted
Tue Aug 21 21:48:34 2012
NOTE: LGWR doing non-clean dismount of group 1 (DG_DATA)
NOTE: LGWR sync ABA=2.578 last written ABA 2.578
Tue Aug 21 21:48:34 2012
kjbdomdet send to inst 1
detach from dom 1, sending detach message to inst 1
Tue Aug 21 21:48:34 2012
List of instances:
1 2
Dirty detach reconfiguration started (new ddet inc 1, cluster inc 8)
Global Resource Directory partially frozen for dirty detach
* dirty detach - domain 1 invalid = TRUE 
299 GCS resources traversed, 0 cancelled
Dirty Detach Reconfiguration complete
Tue Aug 21 21:48:34 2012
WARNING: dirty detached from domain 1
NOTE: cache dismounted group 1/0x3B08906D (DG_DATA) 
SQL> alter diskgroup DG_DATA dismount force /* ASM SERVER */ 
Received dirty detach msg from inst 1 for dom 1
List of instances:
1 2
Dirty detach reconfiguration started (new ddet inc 2, cluster inc 8)
Global Resource Directory partially frozen for dirty detach
* dirty detach - domain 1 invalid = TRUE 
50 GCS resources traversed, 0 cancelled
freeing rdom 1
Dirty Detach Reconfiguration complete
ERROR: ORA-15130 in COD recovery for diskgroup 1/0x3b08906d (DG_DATA)
ERROR: ORA-15130 thrown in RBAL for group number 1
Errors in file /u01/app/oracle/diag/asm/+asm/+ASM2/trace/+ASM2_rbal_4839.trc:
ORA-15130: diskgroup "DG_DATA" is being dismounted
ERROR: ORA-15130 in COD recovery for diskgroup 1/0x3b08906d (DG_DATA)
ERROR: ORA-15130 thrown in RBAL for group number 1
Errors in file /u01/app/oracle/diag/asm/+asm/+ASM2/trace/+ASM2_rbal_4839.trc:
ORA-15130: diskgroup "DG_DATA" is being dismounted
NOTE: AMDU dump of disk group DG_DATA created at /u01/app/oracle/diag/asm/+asm/+ASM2/trace
Tue Aug 21 21:48:40 2012
NOTE: cache deleting context for group DG_DATA 1/0x3b08906d
GMON dismounting group 1 at 22 for pid 27, osid 21477
NOTE: Disk  in mode 0x8 marked for de-assignment
NOTE: Disk  in mode 0x8 marked for de-assignment
NOTE: Disk  in mode 0x8 marked for de-assignment
NOTE: Disk  in mode 0x8 marked for de-assignment
NOTE: Disk  in mode 0x8 marked for de-assignment
NOTE: Disk  in mode 0x8 marked for de-assignment
NOTE: Disk  in mode 0x8 marked for de-assignment
NOTE: Disk  in mode 0x8 marked for de-assignment
NOTE: Disk  in mode 0x8 marked for de-assignment
NOTE: Disk  in mode 0x8 marked for de-assignment
SUCCESS: diskgroup DG_DATA was dismounted
SUCCESS: alter diskgroup DG_DATA dismount force /* ASM SERVER */
Tue Aug 21 21:48:41 2012
NOTE: diskgroup resource ora.DG_DATA.dg is offline
ERROR: PST-initiated MANDATORY DISMOUNT of group DG_DATA
NOTE: ASM client rac2:rac disconnected unexpectedly.
NOTE: check client alert log.
NOTE: Trace records dumped in trace file /u01/app/oracle/diag/asm/+asm/+ASM2/trace/+ASM2_ora_20761.trc
Tue Aug 21 21:48:47 2012
Errors in file /u01/app/oracle/diag/asm/+asm/+ASM2/trace/+ASM2_ora_21515.trc:
ORA-17503: ksfdopn:2 Failed to open file +DG_DATA/rac/spfilerac.ora
ORA-15001: diskgroup "DG_DATA" does not exist or is not mounted





alert_rac2.log
============================
复制内容到剪贴板
代码:
Tue Aug 21 21:48:12 2012
alter database
add logfile thread 1
GROUP 9  ('+dg_data/rac/onlinelog/t1_g9_redo.log') SIZE 90M ,
GROUP 10 ('+dg_data/rac/onlinelog/t1_g10_redo.log') SIZE 90M ,
GROUP 11 ('+dg_data/rac/onlinelog/t1_g11_redo.log') SIZE 90M ,
GROUP 12 ('+dg_data/rac/onlinelog/t1_g12_redo.log') SIZE 90M ,
GROUP 13 ('+dg_data/rac/onlinelog/t1_g13_redo.log') SIZE 90M ,
GROUP 14 ('+dg_data/rac/onlinelog/t1_g14_redo.log') SIZE 90M 
Tue Aug 21 21:48:40 2012
SUCCESS: diskgroup DG_DATA was dismounted
SUCCESS: diskgroup DG_DATA was dismounted
Tue Aug 21 21:48:41 2012
ORA-301 signalled during: alter database
add logfile thread 1
GROUP 9  ('+dg_data/rac/onlinelog/t1_g9_redo.log') SIZE 90M ,
GROUP 10 ('+dg_data/rac/onlinelog/t1_g10_redo.log') SIZE 90M ,
GROUP 11 ('+dg_data/rac/onlinelog/t1_g11_redo.log') SIZE 90M ,
GROUP 12 ('+dg_data/rac/onlinelog/t1_g12_redo.log') SIZE 90M ,
GROUP 13 ('+dg_data/rac/onlinelog/t1_g13_redo.log') SIZE 90M ,
GROUP 14 ('+dg_data/rac/onlinelog/t1_g14_redo.log') SIZE 90M ...
Tue Aug 21 21:48:41 2012
Errors in file /u01/app/oracle/diag/rdbms/rac/rac2/trace/rac2_lmon_20198.trc:
ORA-00202: control file: '+DG_DATA/rac/control01.ctl'
ORA-15078: ASM diskgroup was forcibly dismounted
Tue Aug 21 21:48:41 2012
Errors in file /u01/app/oracle/diag/rdbms/rac/rac2/trace/rac2_ckpt_20216.trc:
ORA-00206: error in writing (block 4, # blocks 1) of control file
ORA-00202: control file: '+DG_DATA/rac/control02.ctl'
ORA-15078: ASM diskgroup was forcibly dismounted
ORA-15078: ASM diskgroup was forcibly dismounted
ORA-00206: error in writing (block 4, # blocks 1) of control file
ORA-00202: control file: '+DG_DATA/rac/control01.ctl'
ORA-15078: ASM diskgroup was forcibly dismounted
ORA-15078: ASM diskgroup was forcibly dismounted
Errors in file /u01/app/oracle/diag/rdbms/rac/rac2/trace/rac2_ckpt_20216.trc:
ORA-00221: error on write to control file
ORA-00206: error in writing (block 4, # blocks 1) of control file
ORA-00202: control file: '+DG_DATA/rac/control02.ctl'
ORA-15078: ASM diskgroup was forcibly dismounted
ORA-15078: ASM diskgroup was forcibly dismounted
ORA-00206: error in writing (block 4, # blocks 1) of control file
ORA-00202: control file: '+DG_DATA/rac/control01.ctl'
ORA-15078: ASM diskgroup was forcibly dismounted
ORA-15078: ASM diskgroup was forcibly dismounted
Tue Aug 21 21:48:41 2012
System state dump requested by (instance=2, osid=20216 (CKPT)), summary=[abnormal instance termination].
System State dumped to trace file /u01/app/oracle/diag/rdbms/rac/rac2/trace/rac2_diag_20188.trc
Dumping diagnostic data in directory=[cdmp_20120821214841], requested by (instance=2, osid=20216 (CKPT)), summary=[abnormal instance termination].
CKPT (ospid: 20216): terminating the instance due to error 221
Tue Aug 21 21:48:45 2012
ORA-1092 : opitsk aborting process
Tue Aug 21 21:48:45 2012
License high water mark = 6
Instance terminated by CKPT, pid = 20216
USER (ospid: 21507): terminating the instance
Instance terminated by USER, pid = 21507
上传相关的日志和trace文件。
在MOS中发现一个问题和这个问题类似:
<Alert: Querying V$ASM_FILE Gives ORA-15196 After ASM Was Upgraded From 10gR2 To 11gR2 with an AU size > 1M [ID 1145365.1]>

但是,我之前的10g是RAC是raw devices,并不存在AU size一说。
请各位帮忙看看。

Edited by: Maclean Liu on Aug 21, 2012 10:56 PM
This post has been answered by LiuMaclean(刘相兵) on Aug 23 2012
Jump to Answer
Comments
Locked Post
New comments cannot be posted to this locked post.
Post Details
Locked on Sep 20 2012
Added on Aug 22 2012
6 comments
1,535 views