web-dev-qa-db-ja.com

データベースの復元時にORA-01180

RMANを使用してバックアップからデータベースを復元しようとすると、次のエラーメッセージが表示されます。

rman target /

RMAN> set dbid=130474031
RMAN> configure device type 'sbt_tape' clear;
RMAN> startup nomount;
RMAN> restore controlfile from autobackup;
RMAN> sql 'alter database mount';
RMAN> restore database;

Starting restore at 22-DEC-15
using channel ORA_DISK_1

creating datafile fno=1 name=/opt/Oracle/oradata/prod/system01.dbf
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of restore command at 12/22/2015 12:47:01
ORA-01180: can not create datafile 1
ORA-01110: data file 1: '/opt/Oracle/oradata/prod/system01.dbf'
RMAN>

[〜#〜]編集[〜#〜]

RMAN> restore database;

Starting restore at 22-DEC-15
using channel ORA_DISK_1

creating datafile fno=1 name=/opt/Oracle/oradata/prod/system01.dbf
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of restore command at 12/22/2015 14:22:01
ORA-01180: can not create datafile 1
ORA-01110: data file 1: '/opt/Oracle/oradata/prod/system01.dbf'

RMAN> exit


Recovery Manager complete.
[Oracle@DR-Corebank ~]$ id
uid=501(Oracle) gid=501(oinstall) groups=501(oinstall),502(dba)
[Oracle@DR-Corebank ~]$ cd /opt/Oracle/oradata/prod/
[Oracle@DR-Corebank prod]$ touch aaa
[Oracle@DR-Corebank prod]$ ls -ltr
total 875772
-rw-r----- 1 Oracle oinstall 298631168 Dec 22 14:22 control03.ctl
-rw-r----- 1 Oracle oinstall 298631168 Dec 22 14:22 control02.ctl
-rw-r----- 1 Oracle oinstall 298631168 Dec 22 14:22 control01.ctl
-rw-r--r-- 1 Oracle oinstall         0 Dec 22 14:22 aaa
[Oracle@DR-Corebank prod]$ pwd
/opt/Oracle/oradata/prod
[Oracle@DR-Corebank prod]$ df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/cciss/c0d0p3     1.1T  163G  850G  17% /
/dev/cciss/c0d0p1     244M   18M  213M   8% /boot
tmpfs                 7.9G     0  7.9G   0% /dev/shm
/dev/mapper/mpath0    493G  248M  467G   1% /opt/Oracle2/u002
4
Dumitru Gutu

元々質問に編集された(および Balazs Papp によるコメントに基づく)自己回答からのコミュニティWiki回答。

私は化身を忘れました:

RMAN> list incarnation;

List of Database Incarnations
DB Key  Inc Key DB Name  DB ID            STATUS  Reset SCN  Reset Time
------- ------- -------- ---------------- --- ---------- ----------
1       1       PROD     130474031        PARENT  1          10-MAY-10
2       2       PROD     130474031        PARENT  195833299  21-OCT-10
3       3       PROD     130474031        PARENT  3655020271 06-OCT-12
4       4       PROD     130474031        PARENT  3655121615 08-OCT-12
5       5       PROD     130474031        CURRENT 5588371557 19-OCT-14

RMAN> reset database to incarnation 4;

database reset to incarnation 4

RMAN> restore database;

Starting restore at 22-DEC-15
allocated channel: ORA_DISK_1
channel ORA_DISK_1: sid=10993 devtype=DISK

creating datafile fno=3 name=/opt/Oracle/oradata/prod/sysaux01.dbf
creating datafile fno=4 name=/opt/Oracle/oradata/prod/users01.dbf

これで問題は解決しました。

1
Paul White 9

私の場合、復元が成功する前にバックアップをクロスチェックする必要がありました。どういうわけか、そのステータスはEXPIREDでした。

0
Italo Moises

このディレクトリ/opt/Oracle/oradata/prod/存在し、Oracleユーザーはこのディレクトリに必要な権限を持っています

0
Ahmad Abuhasna