在一台AIX+ASM但实例环境上使用DBCA创建数据库时,遭遇了ORA-00600 [kfioTranslateIO03]的错误。
alert 告警日志内容如下:
NOTE: Loaded library: System
ORA-15025: could not open disk "/dev/rhdisk1"
ORA-27041: unable to open file
IBM AIX RISC System/6000 Error: 13: Permission denied
Additional information: 11
ORA-15025: could not open disk "/dev/rhdisk2"
ORA-27041: unable to open file
IBM AIX RISC System/6000 Error: 13: Permission denied
Additional information: 11
ORA-15025: could not open disk "/dev/rhdisk3"
ORA-27041: unable to open file
IBM AIX RISC System/6000 Error: 13: Permission denied
Additional information: 11
ORA-15025: could not open disk "/dev/rhdisk4"
ORA-27041: unable to open file
IBM AIX RISC System/6000 Error: 13: Permission denied
Additional information: 11
ORA-15025: could not open disk "/dev/rhdisk5"
ORA-27041: unable to open file
IBM AIX RISC System/6000 Error: 13: Permission denied
Additional information: 11
ORA-15025: could not open disk "/dev/rhdisk6"
ORA-27041: unable to open file
IBM AIX RISC System/6000 Error: 13: Permission denied
Additional information: 11
SUCCESS: diskgroup DATA was mounted
Errors in file /soft/oracle/diag/rdbms/srcbfin/SRCBFIN/trace/SRCBFIN_ora_22872078.trc (incident=32946):
ORA-00600: internal error code, arguments: [kfioTranslateIO03], [], [], [], [], [], [], [], [], [], [], []
Incident details in: /soft/oracle/diag/rdbms/srcbfin/SRCBFIN/incident/incdir_32946/SRCBFIN_ora_22872078_i32946.trc
Use ADRCI or Support Workbench to package the incident.
See Note 411.1 at My Oracle Support for error and packaging details.
2012-02-15 21:04:21.876000 +08:00
ERROR: unrecoverable error ORA-600 raised in ASM I/O path; terminating process 22872078
Dumping diagnostic data in directory=[cdmp_20120215210422], requested by (instance=1, osid=22872078), summary=[incident=32946].
2012-02-15 21:04:25.292000 +08:00
Shutting down instance (abort)
License high water mark = 2
USER (ospid: 22872080): terminating the instance
Instance terminated by USER, pid = 22872080
2012-02-15 21:04:26.332000 +08:00
Instance shutdown complete
在日志中出现了Oracle用户无权限访问asm磁盘组磁盘的问题。查看了一下这些磁盘的属性都是600,并且磁盘的用户属性为grid用户,导致oracle用户无法读取这些磁盘设备:
[uathzdb@oracle]$ ls -l /dev/rhdisk[1-6]crw------- 1 grid asmdba 17, 3 Feb 15 21:15 /dev/rhdisk1
crw------- 1 grid asmdba 17, 4 Feb 15 21:15 /dev/rhdisk2
crw------- 1 grid asmdba 17, 0 Feb 15 21:15 /dev/rhdisk3
crw------- 1 grid asmdba 17, 5 Feb 15 21:15 /dev/rhdisk4
crw------- 1 grid asmdba 17, 6 Feb 15 21:15 /dev/rhdisk5
crw------- 1 grid asmdba 17, 1 Feb 15 21:15 /dev/rhdisk6
修改磁盘设备的属性为660,问题解决
[uathzdb@oracle]$ chmod 660 /dev/rhdisk[1-6]
[uathzdb@oracle]$ ls -l /dev/rhdisk[1-6]crw-rw---- 1 grid asmdba 17, 3 Feb 15 21:15 /dev/rhdisk1
crw-rw---- 1 grid asmdba 17, 4 Feb 15 21:15 /dev/rhdisk2
crw-rw---- 1 grid asmdba 17, 0 Feb 15 21:15 /dev/rhdisk3
crw-rw---- 1 grid asmdba 17, 5 Feb 15 21:15 /dev/rhdisk4
crw-rw---- 1 grid asmdba 17, 6 Feb 15 21:15 /dev/rhdisk5
crw-rw---- 1 grid asmdba 17, 1 Feb 15 21:15 /dev/rhdisk6