RMAN restore fails with ORA-01180: can not create datafile 1 (文档 ID 1265151.1)
In this Document
Symptoms |
Cause |
Solution |
APPLIES TO:
Oracle Database - Enterprise Edition - Version 9.2.0.1 and laterInformation in this document applies to any platform.
***Checked for relevance on 16-Apr-2014***
SYMPTOMS
RMAN restore fails with errors like the following:
creating datafile fno=1 name=/u01/system01.dbfRMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of restore command at 01/01/2010 00:00:01
ORA-01180: can not create datafile 1
ORA-01110: data file 1: '/u01/system01.dbf'
This error can happen for any datafiles. However, it is a major concern if it is datafile 1. Datafile 1 is the system datafile. It cannot be CREATED during an RMAN restore. It must RESTORED from a backup. Therefore we must look to see why it cannot be restored in the first place.
Often the error is not a problem with RMAN unable to write to the destination drive as one might think by looking at the error message "can not create datafile 1".
CAUSE
There are no backups available for use
OR
The current incarnation is not set correctly
SOLUTION
Check the database's incarnation and observe the backup time. Do you have available backups to use? Is the incarnation set correctly?
Confirm that the incarnation and backup:
RMAN> list incarnation of database;RMAN> list backup of datafile 1;
RMAN> list copy of datafile 1;
RMAN> list backup summary;
1) Are the backups available for use?
RMAN> list backup of datafile 1;
List of Backup Sets
===================
BS Key Type LV Size Device Type Elapsed Time Completion Time
------- ---- -- ---------- ----------- ------------ --------------------
138 Full 531.25M DISK 00:00:00 13 FEB 2015 14:31:35
BP Key: 136 Status: AVAILABLE Compressed: NO Tag: TAG20150213T143135
Piece Name: /opt/app/oracle/fra/ORA102/backupset/2015_02_13/o1_mf_nnndf_TAG20150213T143135_bftw0r14_.bkp
List of Datafiles in backup set 138
File LV Type Ckp SCN Ckp Time Name
---- -- ---- ---------- -------------------- ----
1 Full 25207062 13 FEB 2015 14:31:35 /opt/app/oracle/oradata/ORA102/system01.dbf
Instead the error is lack of backup (level 0, full or copy) of the datafile. If the backup is in status EXPIRED, then run crosscheck on the backup set key to see if it still exists:
RMAN> crosscheck backupset 138;
If found, the status will be updated to AVAILABLE.
If the status is still EXPIRED after running crosscheck then the backup you need no longer physically exists.
2) Check the CURRENT Incarnation
If a backup is Available for use, but the restore still fails, then check the incarnation. Has it been set correctly?
Consider the following:
RMAN> list backup of datafile 1;
List of Backup Sets
===================
BS Key Type LV Size Device Type Elapsed Time Completion Time
------- ---- -- ---------- ----------- ------------ --------------------
138 Full 531.25M DISK 00:00:00 13 FEB 2015 14:31:35
BP Key: 136 Status: AVAILABLE Compressed: NO Tag: TAG20150213T143135
Piece Name: /opt/app/oracle/fra/ORA102/backupset/2015_02_13/o1_mf_nnndf_TAG20150213T143135_bftw0r14_.bkp
List of Datafiles in backup set 138
File LV Type Ckp SCN Ckp Time Name
---- -- ---- ---------- -------------------- ----
1 Full 25207062 13 FEB 2015 14:31:35 /opt/app/oracle/oradata/ORA102/system01.dbf
BS Key Type LV Size Device Type Elapsed Time Completion Time
------- ---- -- ---------- ----------- ------------ --------------------
139 Full 531.32M DISK 00:00:00 13 FEB 2015 14:09:34
BP Key: 137 Status: AVAILABLE Compressed: NO Tag: TAG20150213T140934
Piece Name: /opt/app/oracle/fra/ORA102/backupset/2015_02_13/o1_mf_nnndf_TAG20150213T140934_bfttqhh7_.bkp
List of Datafiles in backup set 139
File LV Type Ckp SCN Ckp Time Name
---- -- ---- ---------- -------------------- ----
1 Full 25206825 13 FEB 2015 14:09:34 /opt/app/oracle/oradata/ORA102/system01.dbf
RMAN> list incarnation of database;
List of Database Incarnations
DB Key Inc Key DB Name DB ID STATUS Reset SCN Reset Time
------- ------- -------- ---------------- --- ---------- ----------
1 1 ORA102 400119926 CURRENT 1 19 MAR 2012 15:29:58
2 2 ORA102 400119926 ORPHAN 5766931 04 OCT 2012 15:37:51
3 3 ORA102 400119926 ORPHAN 5768164 16 OCT 2012 15:33:09
...
9 9 ORA102 400119926 ORPHAN 25204629 13 FEB 2015 13:03:55
10 10 ORA102 400119926 ORPHAN 25205038 13 FEB 2015 13:35:57
11 11 ORA102 400119926 ORPHAN 25206695 13 FEB 2015 14:09:07
13 13 ORA102 400119926 ORPHAN 25206882 13 FEB 2015 14:16:24
14 14 ORA102 400119926 ORPHAN 25206882 13 FEB 2015 14:43:32
12 12 ORA102 400119926 ORPHAN 25206883 13 FEB 2015 14:30:54
To restore backup tag taken on 13 FEB 2015 14:09:34, (TAG20150213T140934), you must reset the incarnation to 11 before performing the the restore.
RMAN> reset database to incarnation 11;