ASM磁碟故障診斷(二)
一個客戶的RAC環境出現了故障,一個節點作業系統崩潰,重灌系統後,CLUSTER新增成功,但是ASM例項新增報錯。
這一篇描述問題的解決。
ASM磁碟故障診斷(一):http://yangtingkun.itpub.net/post/468/521325
上一篇介紹了ASM磁碟組目前的問題,也確定瞭解決方向,修改ASM磁碟的頭資訊。
想要修改ASM磁碟頭資訊,要藉助Oracle的工具kfed,而預設這個工具是沒有編譯的,進入$ORACLE_HOME/lib目錄,對kfed工具資訊編譯:
[oracle@node1 lib]$ make -f ins_rdbms.mk ikfed
Linking KFED utility (kfed)
rm -f /u01/app/oracle/product/10.2.0/db_1/rdbms/lib/kfed
gcc -o /u01/app/oracle/product/10.2.0/db_1/rdbms/lib/kfed
-L/u01/app/oracle/product/10.2.0/db_1/rdbms/lib/
-L/u01/app/oracle/product/10.2.0/db_1/lib/ -L/u01/app/oracle/product/10.2.0/db_1/lib/stubs/
/u01/app/oracle/product/10.2.0/db_1/lib/s0main.o
/u01/app/oracle/product/10.2.0/db_1/rdbms/lib/sskfeded.o
/u01/app/oracle/product/10.2.0/db_1/rdbms/lib/skfedpt.o
/u01/app/oracle/product/10.2.0/db_1/rdbms/lib/defopt.o -ldbtools10 -lclntsh
`cat /u01/app/oracle/product/10.2.0/db_1/lib/ldflags` -lnsslb10 -lncrypt10
-lnsgr10 -lnzjs10 -ln10 -lnnz10 -lnl10 -lnro10 `cat
/u01/app/oracle/product/10.2.0/db_1/lib/ldflags` -lnsslb10 -lncrypt10 -lnsgr10
-lnzjs10 -ln10 -lnnz10 -lnl10 -lclient10 -lnnetd10 -lvsn10 -lcommon10
-lgeneric10 -lmm -lsnls10 -lnls10 -lcore10 -lsnls10 -lnls10 -lcore10 -lsnls10
-lnls10 -lxml10 -lcore10 -lunls10 -lsnls10 -lnls10 -lcore10 -lnls10 `cat
/u01/app/oracle/product/10.2.0/db_1/lib/ldflags` -lnsslb10 -lncrypt10 -lnsgr10
-lnzjs10 -ln10 -lnnz10 -lnl10 -lnro10 `cat
/u01/app/oracle/product/10.2.0/db_1/lib/ldflags` -lnsslb10 -lncrypt10 -lnsgr10
-lnzjs10 -ln10 -lnnz10 -lnl10 -lclient10 -lnnetd10 -lvsn10 -lcommon10
-lgeneric10 -lsnls10 -lnls10 -lcore10 -lsnls10 -lnls10 -lcore10 -lsnls10
-lnls10 -lxml10 -lcore10 -lunls10 -lsnls10 -lnls10 -lcore10 -lnls10 -lclient10
-lnnetd10 -lvsn10 -lcommon10 -lgeneric10 -lsnls10 -lnls10 -lcore10 -lsnls10
-lnls10 -lcore10 -lsnls10 -lnls10 -lxml10 -lcore10 -lunls10 -lsnls10 -lnls10
-lcore10 -lnls10 `cat /u01/app/oracle/product/10.2.0/db_1/lib/sysliblist`
-Wl,-rpath,/u01/app/oracle/product/10.2.0/db_1/lib -lm `cat
/u01/app/oracle/product/10.2.0/db_1/lib/sysliblist` -ldl -lm
-L/u01/app/oracle/product/10.2.0/db_1/lib
mv -f /u01/app/oracle/product/10.2.0/db_1/bin/kfed
/u01/app/oracle/product/10.2.0/db_1/bin/kfedO
mv: cannot stat `/u01/app/oracle/product/10.2.0/db_1/bin/kfed': No such file or
directory
make: [ikfed] Error 1 (ignored)
mv /u01/app/oracle/product/10.2.0/db_1/rdbms/lib/kfed
/u01/app/oracle/product/10.2.0/db_1/bin/kfed
chmod 751 /u01/app/oracle/product/10.2.0/db_1/bin/kfed
下面就可以用kfed來檢查ASM磁碟裸裝置的檔案頭資訊了:
[oracle@node1 data]$ kfed read /dev/raw/raw4 > raw4.txt
[oracle@node1 data]$ kfed read /dev/raw/raw5 > raw5.txt
[oracle@node1 data]$ kfed read /dev/raw/raw6 > raw6.txt
將磁碟組DATAG1的兩個磁碟頭以及另一個磁碟組DATAG2的第一個檔案的頭資訊輸出到文字檔案,將三個檔案進行對比,找到raw4檔案中異常的部分。
由於每個磁碟組中有兩個檔案,且有兩個磁碟組,使得比對的工作非常順利,定位到raw4中存在兩個標誌位異常:
[oracle@nccpxdb1 lib]$ kfed read /dev/raw/raw4
kfbh.endian: 1 ; 0x000: 0x01
kfbh.hard: 130 ;
0x001: 0x82
kfbh.type: 1 ;
0x002: KFBTYP_DISKHEAD
kfbh.datfmt: 1 ;
0x003: 0x01
kfbh.block.blk: 0 ;
0x004: T=0 NUMB=0x0
kfbh.block.obj: 2147483648 ;
0x008: TYPE=0x8 NUMB=0x0
kfbh.check: 4024565597 ;
0x00c: 0xefe1ff5d
kfbh.fcn.base: 952047 ;
0x010: 0x000e86ef
kfbh.fcn.wrap: 0 ;
0x014: 0x00000000
kfbh.spare1: 0 ;
0x018: 0x00000000
kfbh.spare2: 0 ;
0x01c: 0x00000000
kfdhdb.driver.provstr: ORCLDISK ;
0x000: length=8
kfdhdb.driver.reserved[0]: 0 ;
0x008: 0x00000000
kfdhdb.driver.reserved[1]: 0 ;
0x00c: 0x00000000
kfdhdb.driver.reserved[2]: 0 ;
0x010: 0x00000000
kfdhdb.driver.reserved[3]: 0 ;
0x014: 0x00000000
kfdhdb.driver.reserved[4]: 0 ;
0x018: 0x00000000
kfdhdb.driver.reserved[5]: 0 ; 0x01c: 0x00000000
kfdhdb.compat: 168820736 ;
0x020: 0x0a100000
kfdhdb.dsknum: 0 ;
0x024: 0x0000
kfdhdb.grptyp: 1 ;
0x026: KFDGTP_EXTERNAL
kfdhdb.hdrsts: 3 ;
0x027: KFDHDR_MEMBER
kfdhdb.dskname: DATAG1_0000 ;
0x028: length=11
kfdhdb.grpname: DATAG1 ;
0x048: length=6
kfdhdb.fgname: DATAG1_0000 ;
0x068: length=11
kfdhdb.capname: ;
0x088: length=0
kfdhdb.crestmp.hi: 32928501 ;
0x0a8: HOUR=0x15 DAYS=0x17 MNTH=0xc YEAR=0x7d9
kfdhdb.crestmp.lo: 2195144704 ;
0x0ac: USEC=0x0 MSEC=0x1d0 SECS=0x2d MINS=0x20
kfdhdb.mntstmp.hi: 32940275 ;
0x0b0: HOUR=0x13 DAYS=0x7 MNTH=0x8 YEAR=0x7da
kfdhdb.mntstmp.lo: 3201116160 ;
0x0b4: USEC=0x0 MSEC=0x34a SECS=0x2c MINS=0x2f
kfdhdb.secsize: 512 ;
0x0b8: 0x0200
kfdhdb.blksize: 4096 ;
0x0ba: 0x1000
kfdhdb.ausize: 1048576 ;
0x0bc: 0x00100000
kfdhdb.mfact: 113792 ;
0x0c0: 0x0001bc80
kfdhdb.dsksize: 512000 ;
0x0c4: 0x0007d000
kfdhdb.pmcnt: 6 ;
0x0c8: 0x00000006
kfdhdb.fstlocn: 1 ;
0x0cc: 0x00000001
kfdhdb.altlocn: 2 ;
0x0d0: 0x00000002
kfdhdb.f1b1locn: 2 ;
0x0d4: 0x00000002
kfdhdb.redomirrors[0]: 0 ;
0x0d8: 0x0000
kfdhdb.redomirrors[1]: 65535 ;
0x0da: 0xffff
kfdhdb.redomirrors[2]: 65535 ; 0x0dc: 0xffff
kfdhdb.redomirrors[3]: 65535 ;
0x0de: 0xffff
kfdhdb.dbcompat: 168820736 ;
0x0e0: 0x0a100000
kfdhdb.grpstmp.hi: 32928501 ;
0x0e4: HOUR=0x15 DAYS=0x17 MNTH=0xc YEAR=0x7d9
kfdhdb.grpstmp.lo: 2195053568 ; 0x0e8: USEC=0x0 MSEC=0x177
SECS=0x2d MINS=0x20
kfdhdb.ub4spare[0]: 0 ;
0x0ec: 0x00000000
kfdhdb.ub4spare[1]: 0 ;
0x0f0: 0x00000000
kfdhdb.ub4spare[2]: 0 ;
0x0f4: 0x00000000
kfdhdb.ub4spare[3]: 0 ;
0x0f8: 0x00000000
kfdhdb.ub4spare[4]: 0 ;
0x0fc: 0x00000000
kfdhdb.ub4spare[5]: 0 ;
0x100: 0x00000000
kfdhdb.ub4spare[6]: 0 ;
0x104: 0x00000000
kfdhdb.ub4spare[7]: 0 ; 0x108: 0x00000000
kfdhdb.ub4spare[8]: 0 ;
0x10c: 0x00000000
kfdhdb.ub4spare[9]: 0 ;
0x110: 0x00000000
kfdhdb.ub4spare[10]: 0 ;
0x114: 0x00000000
kfdhdb.ub4spare[11]: 0 ;
0x118: 0x00000000
kfdhdb.ub4spare[12]: 0 ;
0x11c: 0x00000000
kfdhdb.ub4spare[13]: 0 ;
0x120: 0x00000000
kfdhdb.ub4spare[14]: 0 ;
0x124: 0x00000000
kfdhdb.ub4spare[15]: 0 ;
0x128: 0x00000000
kfdhdb.ub4spare[16]: 0 ;
0x12c: 0x00000000
kfdhdb.ub4spare[17]: 0 ;
0x130: 0x00000000
kfdhdb.ub4spare[18]: 0 ;
0x134: 0x00000000
kfdhdb.ub4spare[19]: 0 ;
0x138: 0x00000000
kfdhdb.ub4spare[20]: 0 ;
0x13c: 0x00000000
kfdhdb.ub4spare[21]: 0 ;
0x140: 0x00000000
kfdhdb.ub4spare[22]: 0 ;
0x144: 0x00000000
kfdhdb.ub4spare[23]: 0 ;
0x148: 0x00000000
kfdhdb.ub4spare[24]: 0 ; 0x14c: 0x00000000
kfdhdb.ub4spare[25]: 0 ;
0x150: 0x00000000
kfdhdb.ub4spare[26]: 0 ;
0x154: 0x00000000
kfdhdb.ub4spare[27]: 0 ;
0x158: 0x00000000
kfdhdb.ub4spare[28]: 0 ;
0x15c: 0x00000000
kfdhdb.ub4spare[29]: 0 ;
0x160: 0x00000000
kfdhdb.ub4spare[30]: 0 ;
0x164: 0x00000000
kfdhdb.ub4spare[31]: 0 ;
0x168: 0x00000000
kfdhdb.ub4spare[32]: 0 ;
0x16c: 0x00000000
kfdhdb.ub4spare[33]: 0 ;
0x170: 0x00000000
kfdhdb.ub4spare[34]: 0 ;
0x174: 0x00000000
kfdhdb.ub4spare[35]: 0 ;
0x178: 0x00000000
kfdhdb.ub4spare[36]: 0 ;
0x17c: 0x00000000
kfdhdb.ub4spare[37]: 0 ; 0x180: 0x00000000
kfdhdb.ub4spare[38]: 0 ;
0x184: 0x00000000
kfdhdb.ub4spare[39]: 0 ;
0x188: 0x00000000
kfdhdb.ub4spare[40]: 0 ;
0x18c: 0x00000000
kfdhdb.ub4spare[41]: 0 ;
0x190: 0x00000000
kfdhdb.ub4spare[42]: 0 ;
0x194: 0x00000000
kfdhdb.ub4spare[43]: 104436 ;
0x198: 0x000197f4
kfdhdb.ub4spare[44]: 0 ;
0x19c: 0x00000000
kfdhdb.ub4spare[45]: 0 ;
0x1a0: 0x00000000
kfdhdb.ub4spare[46]: 0 ;
0x1a4: 0x00000000
kfdhdb.ub4spare[47]: 0 ;
0x1a8: 0x00000000
kfdhdb.ub4spare[48]: 0 ;
0x1ac: 0x00000000
kfdhdb.ub4spare[49]: 0 ;
0x1b0: 0x00000000
kfdhdb.ub4spare[50]: 0 ;
0x1b4: 0x00000000
kfdhdb.ub4spare[51]: 0 ;
0x1b8: 0x00000000
kfdhdb.ub4spare[52]: 0 ;
0x1bc: 0x00000000
kfdhdb.ub4spare[53]: 0 ;
0x1c0: 0x00000000
kfdhdb.ub4spare[54]: 0 ;
0x1c4: 0x00000000
kfdhdb.ub4spare[55]: 0 ;
0x1c8: 0x00000000
kfdhdb.ub4spare[56]: 0 ;
0x1cc: 0x00000000
kfdhdb.ub4spare[57]: 0 ;
0x1d0: 0x00000000
kfdhdb.acdb.aba.seq: 0 ; 0x1d4: 0x00000000
kfdhdb.acdb.aba.blk: 0 ;
0x1d8: 0x00000000
kfdhdb.acdb.ents: 0 ;
0x1dc: 0x0000
kfdhdb.acdb.ub2spare: 43605 ;
0x1de: 0xaa55
而raw5磁碟的標識位全為0:
[oracle@nccpxdb1 lib]$ kfed read /dev/raw/raw5
kfbh.endian: 1 ;
0x000: 0x01
kfbh.hard: 130 ;
0x001: 0x82
kfbh.type: 1 ;
0x002: KFBTYP_DISKHEAD
kfbh.datfmt: 1 ;
0x003: 0x01
kfbh.block.blk: 0 ; 0x004: T=0 NUMB=0x0
kfbh.block.obj: 2147483649 ;
0x008: TYPE=0x8 NUMB=0x1
kfbh.check: 1802212223 ;
0x00c: 0x6b6b937f
kfbh.fcn.base: 0 ;
0x010: 0x00000000
kfbh.fcn.wrap: 0 ; 0x014: 0x00000000
kfbh.spare1: 0 ;
0x018: 0x00000000
kfbh.spare2: 0 ;
0x01c: 0x00000000
kfdhdb.driver.provstr: ORCLDISK ;
0x000: length=8
kfdhdb.driver.reserved[0]: 0 ;
0x008: 0x00000000
kfdhdb.driver.reserved[1]: 0 ;
0x00c: 0x00000000
kfdhdb.driver.reserved[2]: 0 ;
0x010: 0x00000000
kfdhdb.driver.reserved[3]: 0 ;
0x014: 0x00000000
kfdhdb.driver.reserved[4]: 0 ;
0x018: 0x00000000
kfdhdb.driver.reserved[5]: 0 ;
0x01c: 0x00000000
kfdhdb.compat: 168820736 ;
0x020: 0x0a100000
kfdhdb.dsknum: 1 ;
0x024: 0x0001
kfdhdb.grptyp: 1 ;
0x026: KFDGTP_EXTERNAL
kfdhdb.hdrsts: 3 ;
0x027: KFDHDR_MEMBER
kfdhdb.dskname: DATAG1_0001 ;
0x028: length=11
kfdhdb.grpname: DATAG1 ;
0x048: length=6
kfdhdb.fgname: DATAG1_0001 ;
0x068: length=11
kfdhdb.capname: ; 0x088: length=0
kfdhdb.crestmp.hi: 32928501 ;
0x0a8: HOUR=0x15 DAYS=0x17 MNTH=0xc YEAR=0x7d9
kfdhdb.crestmp.lo: 2195144704 ;
0x0ac: USEC=0x0 MSEC=0x1d0 SECS=0x2d MINS=0x20
kfdhdb.mntstmp.hi: 32940275 ;
0x0b0: HOUR=0x13 DAYS=0x7 MNTH=0x8 YEAR=0x7da
kfdhdb.mntstmp.lo: 3201116160 ;
0x0b4: USEC=0x0 MSEC=0x34a SECS=0x2c MINS=0x2f
kfdhdb.secsize: 512 ;
0x0b8: 0x0200
kfdhdb.blksize: 4096 ;
0x0ba: 0x1000
kfdhdb.ausize: 1048576 ; 0x0bc: 0x00100000
kfdhdb.mfact: 113792 ;
0x0c0: 0x0001bc80
kfdhdb.dsksize: 512000 ;
0x0c4: 0x0007d000
kfdhdb.pmcnt: 6 ;
0x0c8: 0x00000006
kfdhdb.fstlocn: 1 ; 0x0cc: 0x00000001
kfdhdb.altlocn: 2 ;
0x0d0: 0x00000002
kfdhdb.f1b1locn: 0 ;
0x0d4: 0x00000000
kfdhdb.redomirrors[0]: 0 ;
0x0d8: 0x0000
kfdhdb.redomirrors[1]: 0 ;
0x0da: 0x0000
kfdhdb.redomirrors[2]: 0 ;
0x0dc: 0x0000
kfdhdb.redomirrors[3]: 0 ;
0x0de: 0x0000
kfdhdb.dbcompat: 168820736 ;
0x0e0: 0x0a100000
kfdhdb.grpstmp.hi: 32928501 ;
0x0e4: HOUR=0x15 DAYS=0x17 MNTH=0xc YEAR=0x7d9
kfdhdb.grpstmp.lo: 2195053568 ;
0x0e8: USEC=0x0 MSEC=0x177 SECS=0x2d MINS=0x20
kfdhdb.ub4spare[0]: 0 ;
0x0ec: 0x00000000
kfdhdb.ub4spare[1]: 0 ;
0x0f0: 0x00000000
kfdhdb.ub4spare[2]: 0 ;
0x0f4: 0x00000000
kfdhdb.ub4spare[3]: 0 ;
0x0f8: 0x00000000
kfdhdb.ub4spare[4]: 0 ;
0x0fc: 0x00000000
kfdhdb.ub4spare[5]: 0 ;
0x100: 0x00000000
kfdhdb.ub4spare[6]: 0 ;
0x104: 0x00000000
kfdhdb.ub4spare[7]: 0 ;
0x108: 0x00000000
kfdhdb.ub4spare[8]: 0 ;
0x10c: 0x00000000
kfdhdb.ub4spare[9]: 0 ;
0x110: 0x00000000
kfdhdb.ub4spare[10]: 0 ;
0x114: 0x00000000
kfdhdb.ub4spare[11]: 0 ;
0x118: 0x00000000
kfdhdb.ub4spare[12]: 0 ;
0x11c: 0x00000000
kfdhdb.ub4spare[13]: 0 ;
0x120: 0x00000000
kfdhdb.ub4spare[14]: 0 ;
0x124: 0x00000000
kfdhdb.ub4spare[15]: 0 ; 0x128: 0x00000000
kfdhdb.ub4spare[16]: 0 ;
0x12c: 0x00000000
kfdhdb.ub4spare[17]: 0 ;
0x130: 0x00000000
kfdhdb.ub4spare[18]: 0 ;
0x134: 0x00000000
kfdhdb.ub4spare[19]: 0 ;
0x138: 0x00000000
kfdhdb.ub4spare[20]: 0 ;
0x13c: 0x00000000
kfdhdb.ub4spare[21]: 0 ;
0x140: 0x00000000
kfdhdb.ub4spare[22]: 0 ;
0x144: 0x00000000
kfdhdb.ub4spare[23]: 0 ;
0x148: 0x00000000
kfdhdb.ub4spare[24]: 0 ;
0x14c: 0x00000000
kfdhdb.ub4spare[25]: 0 ;
0x150: 0x00000000
kfdhdb.ub4spare[26]: 0 ;
0x154: 0x00000000
kfdhdb.ub4spare[27]: 0 ;
0x158: 0x00000000
kfdhdb.ub4spare[28]: 0 ;
0x15c: 0x00000000
kfdhdb.ub4spare[29]: 0 ;
0x160: 0x00000000
kfdhdb.ub4spare[30]: 0 ;
0x164: 0x00000000
kfdhdb.ub4spare[31]: 0 ;
0x168: 0x00000000
kfdhdb.ub4spare[32]: 0 ; 0x16c: 0x00000000
kfdhdb.ub4spare[33]: 0 ;
0x170: 0x00000000
kfdhdb.ub4spare[34]: 0 ;
0x174: 0x00000000
kfdhdb.ub4spare[35]: 0 ;
0x178: 0x00000000
kfdhdb.ub4spare[36]: 0 ;
0x17c: 0x00000000
kfdhdb.ub4spare[37]: 0 ;
0x180: 0x00000000
kfdhdb.ub4spare[38]: 0 ;
0x184: 0x00000000
kfdhdb.ub4spare[39]: 0 ;
0x188: 0x00000000
kfdhdb.ub4spare[40]: 0 ;
0x18c: 0x00000000
kfdhdb.ub4spare[41]: 0 ;
0x190: 0x00000000
kfdhdb.ub4spare[42]: 0 ;
0x194: 0x00000000
kfdhdb.ub4spare[43]: 0 ;
0x198: 0x00000000
kfdhdb.ub4spare[44]: 0 ;
0x19c: 0x00000000
kfdhdb.ub4spare[45]: 0 ;
0x1a0: 0x00000000
kfdhdb.ub4spare[46]: 0 ;
0x1a4: 0x00000000
kfdhdb.ub4spare[47]: 0 ;
0x1a8: 0x00000000
kfdhdb.ub4spare[48]: 0 ;
0x1ac: 0x00000000
kfdhdb.ub4spare[49]: 0 ; 0x1b0: 0x00000000
kfdhdb.ub4spare[50]: 0 ;
0x1b4: 0x00000000
kfdhdb.ub4spare[51]: 0 ;
0x1b8: 0x00000000
kfdhdb.ub4spare[52]: 0 ;
0x1bc: 0x00000000
kfdhdb.ub4spare[53]: 0 ;
0x1c0: 0x00000000
kfdhdb.ub4spare[54]: 0 ;
0x1c4: 0x00000000
kfdhdb.ub4spare[55]: 0 ;
0x1c8: 0x00000000
kfdhdb.ub4spare[56]: 0 ;
0x1cc: 0x00000000
kfdhdb.ub4spare[57]: 0 ;
0x1d0: 0x00000000
kfdhdb.acdb.aba.seq: 0 ;
0x1d4: 0x00000000
kfdhdb.acdb.aba.blk: 0 ;
0x1d8: 0x00000000
kfdhdb.acdb.ents: 0 ;
0x1dc: 0x0000
kfdhdb.acdb.ub2spare: 0 ;
0x1de: 0x0000
而磁碟組的DATAG2的兩個磁碟raw6和raw7的標識位也都是全0。
確定了問題後,手工修改這個文字檔案,將kfdhdb.ub4spare[43]和kfdhdb.acdb.ub2spare均改為0:
kfdhdb.ub4spare[43]: 0 ; 0x198: 0x00000000
kfdhdb.ub4spare[44]: 0 ;
0x19c: 0x00000000
.
.
.
kfdhdb.acdb.ents: 0 ; 0x1dc: 0x0000
kfdhdb.acdb.ub2spare: 0 ; 0x1de: 0x0000
然後利用kfed的merge將其寫回磁碟頭:
[oracle@node1 data]$ kfed merge /dev/raw/raw4 text=raw4_new.txt
[oracle@node1 data]$ export ORACLE_SID=+ASM1
[oracle@node1 data]$ sqlplus / as sysdba
SQL*Plus: Release 10.2.0.4.0 - Production on Mon Jun 13 18:45:54 2011
Copyright (c) 1982, 2007, Oracle. All Rights Reserved.
Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 -
64bit Production
With the Partitioning, Real Application Clusters, Oracle Label Security, OLAP,
Data Mining and Real Application Testing options
SQL> set pages 100 lines 120
SQL> select group_number, name, state, total_mb, free_mb from
v$asm_diskgroup;
GROUP_NUMBER NAME
STATE TOTAL_MB FREE_MB
------------ ------------------------------------ ---------- ----------
1 DATAG1 DISMOUNT 0 0
2 DATAG2 MOUNTED 1024000 347457
SQL> select group_number, disk_number, mount_status, header_status, name, path from v$asm_disk;
GROUP_NUMBER DISK_NUMBER MOUNT_STATUS HEADER_STATUS NAME
PATH
------------ ----------- ------------ -------------- ----------- --------------
0 0 CLOSED FOREIGN /dev/raw/raw1
0 1 CLOSED FOREIGN /dev/raw/raw2
0 2 CLOSED FOREIGN /dev/raw/raw8
0 3 CLOSED FOREIGN /dev/raw/raw10
0 4 CLOSED FOREIGN /dev/raw/raw9
0 8 CLOSED MEMBER /dev/raw/raw4
0 5 CLOSED MEMBER /dev/raw/raw5
2 1 CACHED MEMBER DATAG2_0001 /dev/raw/raw7
2 0 CACHED MEMBER DATAG2_0000 /dev/raw/raw6
SQL> alter diskgroup datag1 mount;
Diskgroup altered.
SQL> shutdown immediate
ASM diskgroups dismounted
ASM instance shutdown
SQL> startup
ASM instance started
Total System Global Area
130023424 bytes
Fixed Size 2082208 bytes
Variable Size 102775392 bytes
ASM Cache 25165824 bytes
ASM diskgroups mounted
SQL> exit
利用MERGE修改磁碟頭後,磁碟狀態正常,磁碟組順利掛載。此時檢查節點1上的磁碟頭資訊,狀態也恢復了正常。
在執行MERGE命令的時候,整個磁碟組並沒有解除安裝,資料庫也在正常執行,也就是說,在整個操作過程中,並沒有1秒鐘的停機時間,所有的修改都是ONLINE進行的。
只要磁碟組恢復了正常,剩下的操作就很簡單了,手工將第二個例項新增到資料庫中就可以了。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/4227/viewspace-703174/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- ASM磁碟故障診斷(一)ASM
- Oracle故障診斷Oracle
- 光纖故障診斷和故障排查
- 故障診斷學習工具
- RAC故障診斷指令碼指令碼
- 故障分析 | Kubernetes 故障診斷流程
- 9 Oracle Data Guard 故障診斷Oracle
- DB2故障診斷工具DB2
- mysql複製故障診斷與排除MySql
- 部落格連結—Oracle故障診斷Oracle
- 修復ASM磁碟頭(二)ASM
- websphere中介軟體故障診斷troubleshootingWeb
- 利用 Java dump 進行 JVM 故障診斷JavaJVM
- awr診斷分析之二
- 故障診斷為什麼要用深度學習?深度學習
- 一次DG故障診斷過程分析
- Cisco路由器故障診斷技術(轉)路由器
- 一次asm磁碟頭部資訊丟失故障ASM
- 大語言模型與資料庫故障診斷模型資料庫
- oracle 10046事件故障診斷一例Oracle事件
- 【故障診斷】cr塊slot notfound解決過程
- 【記錄】Linux 系統故障診斷與排除Linux
- Oracle___診斷案例__資料庫的exp故障Oracle資料庫
- IBM Lotus Sametime Servers 故障診斷與排除IBMServer
- 風機故障診斷學習資源(更新中)
- ASM磁碟組故障導致資料庫不能起來ASM資料庫
- ASM啟動ORA-27125錯誤診斷ASM
- MySQL故障診斷常用方法手冊(含指令碼、案例)MySql指令碼
- 企業內部區域網網路故障診斷
- 使用隱含Trace引數診斷Oracle Data Pump故障Oracle
- db file async I/O submit等待事件的故障診斷MIT事件
- AIX_故障診斷_0516-062錯誤AI
- 某物流系統資料庫故障診斷案例分析資料庫
- asm故障組故障組ASM
- 【ASM】如何建立ASM磁碟ASM
- ASM之建立ASM磁碟ASM
- 深度學習故障診斷——深度殘差收縮網路深度學習
- 京東科技全鏈路故障診斷智慧運維實踐運維