Oracleasm deletedisk failed Unable to clear disk
March 6, 2014 Leave a comment
I’ve deleted disk from ASM diskgroup:
ALTER DISKGROUP DATA01 DROP DISK DISK6;
After it finished dropping the disk and all extents were moved to the remaining disks, I tried to delete disk from the ASM library and return it to the system:
oracleasm deletedisk -v DISK6
Clearing disk header: oracleasm-write-label: Unable to open device "/dev/oracleasm/disks/DISK6": Device or resource busy
failed
Unable to clear disk "DISK6"
The reason is that oracle leaves the disk open even after removing it from the diskgroup.
There are two solutions:________________________________________________
1. One for 24/7 databases:
–Find the device name
[root@r2n1 ~]# blkid |grep oracleasm
/dev/sdd1: LABEL="DISK6" TYPE="oracleasm"
–Clear the device header manually
Make sure, you use the right device name. If you specify wrong device name, the operation is unrecoverable.
su –
dd if=/dev/zero of=/dev/sdd1 bs=1024 count=100
or
dd if=/dev/zero of=/dev/oracleasm/disks/DISK6 bs=1024 count=100
If you have RAC system , run dd on all nodes.
Another solution:
1. Reboot the server
# reboot
Or
Restart database instance and CRS services
–Shutdown database
$ export ORACE_SID=orcl
$ export ORACLE_HOME=/u01/app/oracle/product/11.2.0/db_1
$ sqlplus / as sysdba
SQL> shutdown immediate;
–Shutdown CRS services
./crsctl stop crs
–Start CRS services
./crsctl start crs
–Start database
$ export ORACE_SID=orcl
$ export ORACLE_HOME=/u01/app/oracle/product/11.2.0/db_1
$ sqlplus / as sysdba
SQL> startup;
2. Then delete the disk.
oracleasm deletedisk -v DISK6