run asmca and click on diskgroup to be dropped. select drop option


you can see diskgroup is dropped and its disk asm-disk13 is available as candidate disk



drop diskgroup manually
check current status
SET LINESIZE 145
SET PAGESIZE 9999
SET VERIFY off
COLUMN group_name FORMAT a20 HEAD 'Disk Group|Name'
COLUMN sector_size FORMAT 99,999 HEAD 'Sector|Size'
COLUMN block_size FORMAT 99,999 HEAD 'Block|Size'
COLUMN allocation_unit_size FORMAT 999,999,999 HEAD 'Allocation|Unit Size'
COLUMN state FORMAT a11 HEAD 'State'
COLUMN type FORMAT a6 HEAD 'Type'
COLUMN total_mb FORMAT 999,999,999 HEAD 'Total Size (MB)'
COLUMN used_mb FORMAT 999,999,999 HEAD 'Used Size (MB)'
COLUMN pct_used FORMAT 999.99 HEAD 'Pct. Used'
break on report on disk_group_name skip 1
compute sum label "Grand Total: " of total_mb used_mb on report
SELECT
name group_name
, sector_size sector_size
, block_size block_size
, allocation_unit_size allocation_unit_size
, state state
, type type
, total_mb total_mb
, (total_mb - free_mb) used_mb
, ROUND((1- (free_mb / total_mb))*100, 2) pct_used
FROM
v$asm_diskgroup
ORDER BY
name
/
Disk Group Sector Block Allocation
Name Size Size Unit Size State Type Total Size (MB) Used Size (MB) Pct. Used
-------------------- ------- ------- ------------ ----------- ------ --------------- -------------- ---------
DATA 512 4,096 1,048,576 MOUNTED EXTERN 30,684 18,932 61.70
REDO 512 4,096 1,048,576 MOUNTED EXTERN 5,114 93 1.82
--------------- --------------
Grand Total: 35,798 19,025
drop the diskgroup
SQL> DROP DISKGROUP REDO;
DROP DISKGROUP REDO
*
ERROR at line 1:
ORA-15039: diskgroup not dropped
ORA-15073: diskgroup REDO is mounted by another ASM instance
so first dismount it on all remote nodes
SQL> sho parameter inst
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
cluster_database_instances integer 4
instance_name string +ASM2
instance_number integer 2
instance_type string asm
SQL> alter diskgroup REDO dismount;
Diskgroup altered.
now try drop from first node.
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
cluster_database_instances integer 4
instance_name string +ASM1
instance_number integer 1
instance_type string asm
SQL> DROP DISKGROUP REDO;
Diskgroup dropped.
diskgroup REDO is dropped
SET LINESIZE 145
SET PAGESIZE 9999
SET VERIFY off
COLUMN group_name FORMAT a20 HEAD 'Disk Group|Name'
COLUMN sector_size FORMAT 99,999 HEAD 'Sector|Size'
COLUMN block_size FORMAT 99,999 HEAD 'Block|Size'
COLUMN allocation_unit_size FORMAT 999,999,999 HEAD 'Allocation|Unit Size'
COLUMN state FORMAT a11 HEAD 'State'
COLUMN type FORMAT a6 HEAD 'Type'
COLUMN total_mb FORMAT 999,999,999 HEAD 'Total Size (MB)'
COLUMN used_mb FORMAT 999,999,999 HEAD 'Used Size (MB)'
COLUMN pct_used FORMAT 999.99 HEAD 'Pct. Used'
break on report on disk_group_name skip 1
compute sum label "Grand Total: " of total_mb used_mb on report
SELECT
name group_name
, sector_size sector_size
, block_size block_size
, allocation_unit_size allocation_unit_size
, state state
, type type
, total_mb total_mb
, (total_mb - free_mb) used_mb
, ROUND((1- (free_mb / total_mb))*100, 2) pct_used
FROM
v$asm_diskgroup
ORDER BY
name
/
Disk Group Sector Block Allocation
Name Size Size Unit Size State Type Total Size (MB) Used Size (MB) Pct. Used
-------------------- ------- ------- ------------ ----------- ------ --------------- -------------- ---------
DATA 512 4,096 1,048,576 MOUNTED EXTERN 30,684 18,932 61.70
--------------- --------------
Grand Total: 30,684 18,932
you can see that the disk asm-disk14 is now avaialable as candidate disk
SET LINESIZE 145
SET PAGESIZE 9999
SET VERIFY off
COLUMN disk_group_name FORMAT a20 HEAD 'Disk Group Name'
COLUMN disk_file_path FORMAT a17 HEAD 'Path'
COLUMN disk_file_name FORMAT a20 HEAD 'File Name'
COLUMN disk_file_fail_group FORMAT a20 HEAD 'Fail Group'
COLUMN total_mb FORMAT 999,999,999 HEAD 'File Size (MB)'
COLUMN used_mb FORMAT 999,999,999 HEAD 'Used Size (MB)'
COLUMN pct_used FORMAT 999.99 HEAD 'Pct. Used'
break on report on disk_group_name skip 1
compute sum label "" of total_mb used_mb on disk_group_name
compute sum label "Grand Total: " of total_mb used_mb on report
SELECT
NVL(a.name, '[CANDIDATE]') disk_group_name
, b.path disk_file_path
, b.name disk_file_name
, b.failgroup disk_file_fail_group
, b.total_mb total_mb
, (b.total_mb - b.free_mb) used_mb
-- , ROUND((1- (b.free_mb / b.total_mb))*100, 2) pct_used
FROM
v$asm_diskgroup a RIGHT OUTER JOIN v$asm_disk b USING (group_number)
ORDER BY
a.name
/
Disk Group Name Path File Name Fail Group File Size (MB) Used Size (MB)
-------------------- ----------------- -------------------- -------------------- -------------- --------------
DATA /dev/asm-disk2 DATA_0001 DATA_0001 5,114 3,152
/dev/asm-disk12 DATA_0005 DATA_0005 5,114 3,150
/dev/asm-disk3 DATA_0002 DATA_0002 5,114 3,149
/dev/asm-disk11 DATA_0004 DATA_0004 5,114 3,148
/dev/asm-disk4 DATA_0003 DATA_0003 5,114 3,151
/dev/asm-disk1 DATA_0000 DATA_0000 5,114 3,182
******************** -------------- --------------
30,684 18,932
[CANDIDATE] /dev/asm-disk14 0 0
/dev/asm-disk13 0 0
******************** -------------- --------------
0 0
-------------- --------------
Grand Total: 30,684 18,932
8 rows selected.