1:添加磁盘SQL> select name,path from v$asm_disk order by name;NAME PATH-------------------- ------------------------------DATADG_0000 /dev/mapper/dataA01DATADG_0001 /dev/mapper/dataB01DATADG_0002 /dev/mapper/dataA02DATADG_0003 /dev/mapper/dataB02GRIDMIRDG_0000 /dev/mapper/crsB11GRIDMIRDG_0001 /dev/mapper/crsB12GRIDNEWDG_0000 /dev/mapper/crsB13GRIDNEWDG_0002 /dev/mapper/crsA12GRIDNEWDG_0004 /dev/mapper/crsA13 /dev/mapper/crsA15 /dev/mapper/dataB05NAME PATH-------------------- ------------------------------ /dev/mapper/crsB14 /dev/mapper/crsB15 /dev/mapper/crsC01 /dev/mapper/dataA03 /dev/mapper/crsA11 /dev/mapper/dataB03 /dev/mapper/dataA04 /dev/mapper/crsA14 /dev/mapper/dataA05 /dev/mapper/dataB04alter diskgroup gridnewdg add failgroup gnewfial04 disk '/dev/mapper/crsC01';
2:删除磁盘alter diskgroup gridnewdg drop disk GRIDNEWDG_0004删除之后,磁盘还在gridnewdg中,但是发现再平衡操作已经完成。SQL> select * from v$asm_operation;no rows selected再次执行再平衡操作发现依然还在:SQL> alter diskgroup gridnewdg rebalance power 1;Diskgroup altered.
3:磁盘依然还在,再次执行报错SQL> alter diskgroup gridnewdg drop disk GRIDNEWDG_0004;alter diskgroup gridnewdg drop disk GRIDNEWDG_0004*ERROR at line 1:ORA-15032: not all alterations performedORA-15071: ASM disk 'GRIDNEWDG_0004' is already being dropped
4:failgroup 导致SQL> col failgroup for a20SQL> set linesize 300SQL> select name,path,FAILGROUP from v$asm_disk order by name;NAME PATH FAILGROUP-------------------- ------------------------------ --------------------DATADG_0000 /dev/mapper/dataA01 DATAFAIL01DATADG_0001 /dev/mapper/dataB01 DATAFAIL01DATADG_0002 /dev/mapper/dataA02 DATAFIAL02DATADG_0003 /dev/mapper/dataB02 DATAFIAL02GRIDMIRDG_0000 /dev/mapper/crsB11 GMIRFAIL01GRIDMIRDG_0001 /dev/mapper/crsB12 GMIRFIAL02GRIDNEWDG_0000 /dev/mapper/crsB13 GNEWFIAL04GRIDNEWDG_0001 /dev/mapper/crsC01 GNEWFIAL04GRIDNEWDG_0002 /dev/mapper/crsA12 GNEWFIAL02GRIDNEWDG_0004 /dev/mapper/crsA13 GNEWFIAL03 /dev/mapper/crsA15NAME PATH FAILGROUP-------------------- ------------------------------ -------------------- /dev/mapper/dataB05 /dev/mapper/crsB14 /dev/mapper/crsB15 /dev/mapper/dataA03 /dev/mapper/crsA11 /dev/mapper/dataB03 /dev/mapper/dataA04 /dev/mapper/crsA14 /dev/mapper/dataA05 /dev/mapper/dataB04normal 冗余策略的DG存放vote文件至少需要三个failgroup。查看vote文件存放位置:[grid@node1 dev]$ crsctl query css votedisk## STATE File Universal Id File Name Disk group-- ----- ----------------- --------- --------- 1. ONLINE 84711683bef84f64bfcee1ba4130bd1b (/dev/mapper/crsA13) [GRIDNEWDG] 2. ONLINE 18a84823cb424fd6bfc009014cb99bfe (/dev/mapper/crsA12) [GRIDNEWDG] 3. ONLINE 2f845578e55a4f4bbf25d0864b0bc26b (/dev/mapper/crsB13) [GRIDNEWDG]Located 3 voting disk(s).
5:将vote文件存放在crsC01磁盘上先将磁盘crsC01从gridnewdg 删除,然后再从新添加一个 failgroup,而不是像之前往已经存在的failgroup GNEWFIAL04 添加crsC01磁盘。SQL> alter diskgroup gridnewdg drop disk GRIDNEWDG_0001 2 ;Diskgroup altered.SQL> alter diskgroup gridnewdg add failgroup gnewfial05 disk '/dev/mapper/crsC01';Diskgroup altered.SQL> select * from v$asm_operation; 等再平衡操作完成之后这时候,ASM会自动将磁盘 GRIDNEWDG_0004 删除。同时vote文件自动转移到crsC01磁盘上[grid@node1 dev]$ crsctl query css votedisk## STATE File Universal Id File Name Disk group-- ----- ----------------- --------- --------- 1. ONLINE 18a84823cb424fd6bfc009014cb99bfe (/dev/mapper/crsA12) [GRIDNEWDG] 2. ONLINE 2f845578e55a4f4bbf25d0864b0bc26b (/dev/mapper/crsB13) [GRIDNEWDG] 3. ONLINE 21c1c99ef5164faabf6186d04aeeb741 (/dev/mapper/crsC01) [GRIDNEWDG]注意:crsA* 是存储AcrsB* 是存储BcrsC* 是RAC数据库服务器节点之一共享出来的一块iscsi设备。通过多路径挂载到本身节点上和另外一个节点上。将vote存放在上个地方上就是为了保证其中一台存储挂掉,数据库正常工作。因为vote文件只能存放在一个DG上,如果此DG是normal冗余策略。只能存放3份,三份只能存放在不同的failgroup上。而根据vote文件“多数可用算法”。只能将三份vote放在不同的设备上,才能保证其中一台存储挂掉,数据库正常工作。