首页 > 代码库 > 【oracle案例】ORA-19573

【oracle案例】ORA-19573

1.1.1. ORA-19573

日期:2014-05-21 17:25

环境:测试环境

 

【情景描述】

数据库实例处于OPEN状态(READ WRITE),这时在RMAN中执行数据库还原、恢复操作遇到报错。

 

【报错信息】

RMAN> run {   

2> allocate channel ch1 type disk;

3> allocate channel ch2 type disk;

4> set until scn 1520939;

5> restore database;

6> recover database;

7> release channel ch1;

8> release channel ch2;

9> }

......

released channel: ch1

released channel: ch2

RMAN-00571:===========================================================

RMAN-00569: =============== ERROR MESSAGESTACK FOLLOWS ===============

RMAN-00571:===========================================================

RMAN-03002: failure of restore command at05/21/2014 17:04:43

ORA-19870: error while restoring backuppiece/U01/app/test/rman/fra/TESTDB/backupset/2014_05_21/o1_mf_nnndf_TAG20140521T164225_9qrsqkyw_.bkp

ORA-19573: cannot obtain exclusive enqueuefor datafile 1

 

RMAN>

 

【报错详解】

[oracle@oracle ~]$ oerr ora 19870

19870, 00000, "error while restoringbackup piece %s"

// *Cause: This error should be followed byother errors indicating

//        the cause of the problem.

// *Action: See other errors actions.

[oracle@oracle ~]$ oerr ora 19573

19573, 00000, "cannot obtain %senqueue for datafile %s"

// *Cause: The file access enqueue could not be obtained for a file

//         specified in a backup, copy or restore operation.

//         If the enqueue type shown is ‘shared‘, then the file is the

//         input file for a backup or copy. If the type is ‘exclusive‘, then

//         the file is the output file for a datafile copy or restore which

//         is attempting to overwrite the currently active version of that

//         file - in this case, the file must be offline or the database must

//         be closed.  If the type is‘read-only‘, then you are attempting

//         to back up or copy this file while the database is in NOARCHIVELOG

//         mode.

// *Action: Wait until the conflictingoperation is complete, then retry

//         the copy or backup.  If thedatabase is in NOARCHIVELOG mode, then

//         all files being backed up must be closed cleanly.

[oracle@oracle ~]$

 

【报错原因】

数据库处于OPEN状态,所有的表空间和数据文件都是ONLINE的,此时oracle不允许还原恢复。

 

【解决方法】

在此测试案例中,先关闭数据库实例,然后打开到MOUNT状态,再次登录RMAN执行不完全恢复。