如果自己搞不定可以找诗檀软件专业ORACLE数据库修复团队成员帮您恢复!

诗檀软件专业数据库修复团队

服务热线 : 13764045638    QQ号:47079569    邮箱:service@parnassusdata.com

  适用于: Oracle Database – 企业版 – 版本11.2.0.1及以后 本文献的信息适用于任何平台。 症状   没有ASMlib ,本地多路径到位。 这是一个独立的环境。 尝试安装磁盘组时,磁盘组安装由于复制磁盘而失败。 SQL> ALTER DISKGROUP ALL MOUNT /* asm agent call crs *//* {0:0:431} */ NOTE: Diskgroups listed in ASM_DISKGROUPS are FRA DATA_02 ... WARNING: detected duplicate paths to the same disk: '/dev/sdan' and '/dev/mapper/Oracle_LUN02' More trace information dumped to '/opt/app/oracle/product/diag/asm/+asm/+ASM/trace/+ASM_ora_1038.trc' WARNING: detected duplicate paths to the same disk: '/dev/sdt' and '/dev/sdy' More trace information dumped to '/opt/app/oracle/product/diag/asm/+asm/+ASM/trace/+ASM_ora_1038.trc' WARNING: detected duplicate paths to the same disk: '/dev/oracle_lun02' and '/dev/sde' More trace information dumped to '/opt/app/oracle/product/diag/asm/+asm/+ASM/trace/+ASM_ora_1038.trc' ERROR: no read quorum in group: required 2, found 0 disks ... NOTE: cache ending mount (fail) of group DATA_02 number=1 incarn=0xcd020c35 NOTE: cache deleting context for group DATA_02 1/0xcd020c35 Tue Jun 10 09:15:05 2014 NOTE: No asm libraries found in the system GMON dismounting group 1 at 2 for pid 17, osid 1038 ERROR: diskgroup DATA_02 was not mounted ERROR: no read quorum in group: required 2, found 0 disks NOTE: cache dismounting (clean) group 2/0xCD020C36 (FRA) ... NOTE: cache deleting context for group FRA 2/0xcd020c36 ASM Health Checker found 1 new failures NOTE: No asm libraries found in the system GMON dismounting group 2 at 4 for pid 17, osid 1038 ERROR: diskgroup FRA was not mounted ORA-15032: not all alterations performed ORA-15017: diskgroup "FRA" cannot be mounted ORA-15063: ASM discovered an insufficient number of disks for diskgroup "FRA" ORA-15017: diskgroup "DATA_02" cannot be mounted ORA-15063: ASM discovered an insufficient number of disks for diskgroup "DATA_02" ERROR: ALTER DISKGROUP ALL MOUNT /* asm agent call crs *//* {0:0:431} */ SQL> ALTER DISKGROUP ALL ENABLE VOLUME ALL /* asm agent *//* {0:0:431} */ SQL> ALTER DISKGROUP DATA_03 MOUNT /* asm agent *//* {0:0:431} */ NOTE: cache registered group DATA_03 number=1 incarn=0xcf220c39 NOTE: cache began mount (first) of group DATA_03 number=1 incarn=0xcf220c39 Tue Jun 10 09:15:05 2014 SQL> ALTER DISKGROUP DATA_04 MOUNT /* asm agent *//* {0:0:431} */ Tue Jun 10 09:15:05 2014 SQL> ALTER DISKGROUP FRA MOUNT /* asm agent *//* {0:0:431} */ WARNING: detected duplicate paths to the same disk: '/dev/sdal' and '/dev/mapper/Oracle_LUN04' More trace information dumped to '/opt/app/oracle/product/diag/asm/+asm/+ASM/trace/+ASM_ora_1038.trc' Tue Jun 10 09:15:05 2014 ALTER SYSTEM SET local_listener='(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=192.16 8.137.182)(PORT=1521))))' SCOPE=MEMORY SID='+ASM'; WARNING: detected duplicate paths to the same disk: '/dev/sdr' and '/dev/sdw' More trace information dumped to '/opt/app/oracle/product/diag/asm/+asm/+ASM/trace/+ASM_ora_1038.trc' WARNING: detected duplicate paths to the same disk: '/dev/oracle_lun04' and '/dev/sdc' More trace information dumped to '/opt/app/oracle/product/diag/asm/+asm/+ASM/trace/+ASM_ora_1038.trc' ERROR: no read quorum in group: required 2, found 0 disks NOTE: cache dismounting (clean) group 1/0xCF220C39 (DATA_03) ... NOTE: cache deleting context for group DATA_03 1/0xcf220c39 GMON dismounting group 1 at 6 for pid 17, osid 1038 ERROR: diskgroup DATA_03 was not mounted ORA-15032: not all alterations performed ORA-15017: diskgroup "DATA_03" cannot be mounted ORA-15063: ASM discovered an insufficient number of disks for diskgroup "DATA_03" ERROR: ALTER DISKGROUP DATA_03 MOUNT /* asm agent *//* {0:0:431} */ SQL> ALTER DISKGROUP FRA_NEW MOUNT /* asm agent *//* {0:0:431} */ NOTE: cache registered group DATA_04 number=1 incarn=0xd0420c3c NOTE: cache began mount (first) of group DATA_04 number=1 incarn=0xd0420c3c Tue Jun 10 09:15:05 2014 NOTE: No asm libraries found in the system ASM Health Checker found 1 new failures WARNING: detected duplicate paths to the same disk: 让我们看一下其中的一个设备, . WARNING: detected duplicate paths to the same disk: '/dev/oracle_lun05' and '/dev/sdk' brw-rw----. 1 oracle oinstall 253, 10 Jun 17 14:54 /dev/oracle_lun05 brw-rw----. 1 root disk 8, 160 Jun 17 14:54 /dev/sdk multipath { wwid 36000d31000110a0000000000000001a2 alias Oracle_LUN05 Oracle_LUN05 (36000d31000110a0000000000000001a2) dm-10 COMPELNT,Compellent Vol size=50G features='1 queue_if_no_path' hwhandler='0' wp=rw `-+- policy='round-robin 0' prio=1 status=active |- 1:0:1:5 sdk 8:160 active ready running <<---------------------- |- 1:0:2:5 sdp 8:240 active ready running |- 2:0:1:5 sdae 65:224 active ready running `- 2:0:2:5 sdaj 66:48 active ready running .   让我们一起验证访问和内容, $ sudo dd if=/dev/oracle_lun05 of=/tmp/oracle_lun05.dd bs=1M count=5 [sudo] password for oracle: 5+0 records in 5+0 records out 5242880 bytes (5.2 MB) copied, 0.174492 s, 30.0 MB/s $ kfed read /dev/oracle_lun05 |egrep "kfbh.type|kfdhdb.driver.provstr|kfdhdb.dsknum|kfdhdb.hdrsts|kfdhdb.grpname" kfbh.type: 1 ; 0x002: KFBTYP_DISKHEAD kfdhdb.driver.provstr: ORCLDISK ; 0x000: length=8 kfdhdb.dsknum: 0 ; 0x024: 0x0000 kfdhdb.hdrsts: 3 ; 0x027: KFDHDR_MEMBER kfdhdb.grpname: DATA_04 ; 0x048: length=7 $ dd if=/dev/sdk of=/tmp/sdk.dd bs=1M count=5 5+0 records in 5+0 records out 5242880 bytes (5.2 MB) copied, 0.323135 s, 16.2 MB/s $ kfed read /dev/sdk |egrep "kfbh.type|kfdhdb.driver.provstr|kfdhdb.dsknum|kfdhdb.hdrsts|kfdhdb.grpname" kfbh.type: 1 ; 0x002: KFBTYP_DISKHEAD kfdhdb.driver.provstr: ORCLDISK ; 0x000: length=8 kfdhdb.dsknum: 0 ; 0x024: 0x0000 kfdhdb.hdrsts: 3 ; 0x027: KFDHDR_MEMBER kfdhdb.grpname: DATA_04 ; 0x048: length=7 . . . . ---So sdk and Oracle_LUN05 is duplicating . Same base device is pointed by two path /dev/sdk and /dev/oracle_lun05 and they are accessible to ASM. 变化 最后一次存储/系统管理员取消提供强制性的快照,并代表数据LUN 原因   + ASM 实例水平 asm_diskstring是合适的。   asm_diskstring                       string      /dev/mapper/Oracle* + At ASM resource level, ALIAS_NAME= ASM_DISKSTRING=/dev/* AUTO_START=restore . --这导致发现在/ dev /*目录中的所有设备,并导致此问题。 解决方法   + 在asm 实例级别和asm 资源配置文件上保持asm_diskstring 值同步。 为改变asm 配置文件级别, $ srvctl modify asm -d '<asm_diskstring>' + 然后重启ASM实例。