2 - 3 minutes readWhat will you do, if RMAN metadata corrupt?

Reader Mode
Error accord when we trying to mount the ASM disk Group.
SQL> startup mount
ORA-15032: not all alterations performed
ORA-15063: diskgroup “” lacks quorum of 2 PST disks; 0 found

Above error may occur if:

a) ASM disk(s) is not visible on the operating system.
b) asm_diskstring parameter is not set correctly on ASM instance(s)
c) ASM metadata in disk is overwritten or corrupted

If above C point is the case, we may need to re-create our ASM instance(s) and disk group(s).

The steps are:

1. Ensure that you have a prior RMAN backup of all databases using ASM
2. Shut down your ASM instance(s)
3. Re-create your ASM disk group(s)
4. Restore databases

Now we will create a case about above mention error:

Database & ASM Details:

Host Name: SUN1
IP: 192.168.126.2
Oracle Home: /export/home/oracle/oracle/product/db_1
DB Name: INDIAN
PORT: 1521
ASM DISK GROUP: DB_DATA01

Step 1 Backup your Database, Archive logs and Control files

$rman target /
RMAN> backup device type disk format ‘/export/home/oracle/rman/DB_%U’ database plus archivelog;
RMAN> backup device type disk format ‘/export/home/oracle/rman/ctrlf_%U’ current controlfile;

Step 2 Manually make copies of your spfiles.

SQL> create pfile=’/export/home/oracle/rman/initINDIAN.ora’ from spfile;

Step 3 Shutdown Database and ASM Instance.

Create Case:

Destroying existing data on a file system partition:/dev/rdsk/c0d1s0 by using dd command:
Log in As a Root user and execute:

#dd if=/dev/zero of=/dev/

Now try to start ASM Instance. Error Accord

ORA-15032: not all alterations performed
ORA-15063: diskgroup “” lacks quorum of 2 PST disks; 0 found

Step 4 Re-create your ASM disk group(s)

Step 5 Restore database

$ export ORACLE_SID=INDIAN
$ sqlplus /nolog
SQL> conn / as sysdba
Connected to an idle instance.
SQL> startup nomount pfile=’/export/home/oracle/rman/initINDIAN.ora’;

$ rman target /
RMAN> restore controlfile from ‘/export/home/oracle/rman/ctrlf_05m7m22o_1_1’;
RMAN> alter database mount;
RMAN> restore database;
RMAN> recover database;
RMAN> alter database open resetlogs;

Step 6 Connect to the ASM instance and get the control file name.

sqlplus ‘/ as sysdba’
SQL> select name, alias_directory from v$asm_alias;

Look for the controlfile name under the CONTROLFILE directory eg: Current.256.746263173

Step 7 Edit the init.ora and change the control_files parameter to point to the one identified from the ASM v$asm_alias view.

Step 8 Re-create the spfile. Example:

SQL> create spfile=’+DB_DATA01′ from pfile=’/export/home/oracle/rman/initINDIAN.ora’;

Step 9 Shutdown and restart the instance to use the newly created spfile.

Step 10 Repeat the “STEP 8” section for additional databases.

Related Articles

Responses

Your email address will not be published. Required fields are marked *

Password Reset
Please enter your e-mail address. You will receive a new password via e-mail.