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執行不完全恢復。