我正在尝试在oracle 11g上执行从一台服务器到另一台服务器的重复操作(测试灾难恢复)。我仍然在学习Oracle。
系统不在生产中,它只是原型的开发,因此我们不需要存档日志/重做日志,所以这些都被禁用,我认为这是令人困惑的事情。
我尝试从RMAN运行以下操作:
DUPLICATE DATABASE TO RON
NOREDO
BACKUP LOCATION 'F:\2014_08_12'
NOFILENAMECHECK;
一切似乎都很顺利,但是经过一段时间(也许半个小时),复制失败了。我认为这是重要的错误信息:
ORA-39700: database must be opened with UPGRADE option
我在谷歌搜索后尝试了一些其他的事情:
SQL> startup upgrade;
ORA-01081: cannot start already-running ORACLE - shut it down first
SQL> shutdown immediate;
ORA-01109: database not open
Database dismounted.
ORACLE instance shut down.
SQL> startup upgrade;
ORACLE instance started.
Total System Global Area 2538741760 bytes
Fixed Size 2178416 bytes
Variable Size 1409286800 bytes
Database Buffers 1107296256 bytes
Redo Buffers 19980288 bytes
Database mounted.
ORA-01113: file 1 needs media recovery
ORA-01110: data file 1: 'C:\APP\CS\ORADATA\RONNIE\SYSTEM01.DBF'
SQL> RECOVER DATABASE UNTIL CANCEL;
ORA-00283: recovery session canceled due to errors
ORA-16433: The database must be opened in read/write mode.
SQL> ALTER DATABASE OPEN READ WRITE;
ALTER DATABASE OPEN READ WRITE
*
ERROR at line 1:
ORA-01113: file 1 needs media recovery
ORA-01110: data file 1: 'C:\APP\CS\ORADATA\RONNIE\SYSTEM01.DBF'
......现在我走到了尽头。有人可以帮忙吗?
原始重复命令的完整输出:
channel ORA_AUX_DISK_1: restore complete, elapsed time: 00:00:04
output file name=C:\APP\RM\ORADATA\RON\CONTROL01.CTL
output file name=C:\APP\RM\FLASH_RECOVERY_AREA\RON\CONTROL02.CTL
Finished restore at 16-OCT-14
database mounted
released channel: ORA_AUX_DISK_1
allocated channel: ORA_AUX_DISK_1
channel ORA_AUX_DISK_1: SID=63 device type=DISK
contents of Memory Script:
{
set newname for datafile 1 to
"C:\APP\CS\ORADATA\RONNIE\SYSTEM01.DBF";
set newname for datafile 2 to
"C:\APP\CS\ORADATA\RONNIE\SYSAUX01.DBF";
set newname for datafile 3 to
"C:\APP\CS\ORADATA\RONNIE\UNDOTBS01.DBF";
set newname for datafile 4 to
"C:\APP\CS\ORADATA\RONNIE\USERS01.DBF";
set newname for datafile 5 to
"C:\APP\CS\ORADATA\RONNIE\USERS2.DBF";
set newname for datafile 6 to
"C:\APP\CS\ORADATA\RONNIE\USERS3.DBF";
restore
clone database
;
}
executing Memory Script
executing command: SET NEWNAME
executing command: SET NEWNAME
executing command: SET NEWNAME
executing command: SET NEWNAME
executing command: SET NEWNAME
executing command: SET NEWNAME
Starting restore at 16-OCT-14
using channel ORA_AUX_DISK_1
channel ORA_AUX_DISK_1: starting datafile backup set restore
channel ORA_AUX_DISK_1: specifying datafile(s) to restore from backup set
channel ORA_AUX_DISK_1: restoring datafile 00003 to C:\APP\CS\ORADATA\RONNIE\UNDOTBS01.DBF
channel ORA_AUX_DISK_1: restoring datafile 00005 to C:\APP\CS\ORADATA\RONNIE\USERS2.DBF
channel ORA_AUX_DISK_1: reading from backup piece F:\2014_08_12\JCPKATMD_1_1
channel ORA_AUX_DISK_1: piece handle=F:\2014_08_12\JCPKATMD_1_1 tag=BACKUP_RONNIE_0000_100514094607
channel ORA_AUX_DISK_1: restored backup piece 1
channel ORA_AUX_DISK_1: reading from backup piece F:\2014_08_12\JCPKATMD_2_1
channel ORA_AUX_DISK_1: piece handle=F:\2014_08_12\JCPKATMD_2_1 tag=BACKUP_RONNIE_0000_100514094607
channel ORA_AUX_DISK_1: restored backup piece 2
channel ORA_AUX_DISK_1: reading from backup piece F:\2014_08_12\JCPKATMD_3_1
channel ORA_AUX_DISK_1: piece handle=F:\2014_08_12\JCPKATMD_3_1 tag=BACKUP_RONNIE_0000_100514094607
channel ORA_AUX_DISK_1: restored backup piece 3
channel ORA_AUX_DISK_1: reading from backup piece F:\2014_08_12\JCPKATMD_4_1
channel ORA_AUX_DISK_1: piece handle=F:\2014_08_12\JCPKATMD_4_1 tag=BACKUP_RONNIE_0000_100514094607
channel ORA_AUX_DISK_1: restored backup piece 4
channel ORA_AUX_DISK_1: reading from backup piece F:\2014_08_12\JCPKATMD_5_1
channel ORA_AUX_DISK_1: piece handle=F:\2014_08_12\JCPKATMD_5_1 tag=BACKUP_RONNIE_0000_100514094607
channel ORA_AUX_DISK_1: restored backup piece 5
channel ORA_AUX_DISK_1: restore complete, elapsed time: 00:18:58
channel ORA_AUX_DISK_1: starting datafile backup set restore
channel ORA_AUX_DISK_1: specifying datafile(s) to restore from backup set
channel ORA_AUX_DISK_1: restoring datafile 00001 to C:\APP\CS\ORADATA\RONNIE\SYSTEM01.DBF
channel ORA_AUX_DISK_1: restoring datafile 00006 to C:\APP\CS\ORADATA\RONNIE\USERS3.DBF
channel ORA_AUX_DISK_1: reading from backup piece F:\2014_08_12\JEPKATME_1_1
channel ORA_AUX_DISK_1: piece handle=F:\2014_08_12\JEPKATME_1_1 tag=BACKUP_RONNIE_0000_100514094607
channel ORA_AUX_DISK_1: restored backup piece 1
channel ORA_AUX_DISK_1: reading from backup piece F:\2014_08_12\JEPKATME_2_1
channel ORA_AUX_DISK_1: piece handle=F:\2014_08_12\JEPKATME_2_1 tag=BACKUP_RONNIE_0000_100514094607
channel ORA_AUX_DISK_1: restored backup piece 2
channel ORA_AUX_DISK_1: restore complete, elapsed time: 00:10:40
channel ORA_AUX_DISK_1: starting datafile backup set restore
channel ORA_AUX_DISK_1: specifying datafile(s) to restore from backup set
channel ORA_AUX_DISK_1: restoring datafile 00002 to C:\APP\CS\ORADATA\RONNIE\SYSAUX01.DBF
channel ORA_AUX_DISK_1: restoring datafile 00004 to C:\APP\CS\ORADATA\RONNIE\USERS01.DBF
channel ORA_AUX_DISK_1: reading from backup piece F:\2014_08_12\JDPKATMD_1_1
channel ORA_AUX_DISK_1: piece handle=F:\2014_08_12\JDPKATMD_1_1 tag=BACKUP_RONNIE_0000_100514094607
channel ORA_AUX_DISK_1: restored backup piece 1
channel ORA_AUX_DISK_1: reading from backup piece F:\2014_08_12\JDPKATMD_2_1
channel ORA_AUX_DISK_1: piece handle=F:\2014_08_12\JDPKATMD_2_1 tag=BACKUP_RONNIE_0000_100514094607
channel ORA_AUX_DISK_1: restored backup piece 2
channel ORA_AUX_DISK_1: reading from backup piece F:\2014_08_12\JDPKATMD_3_1
channel ORA_AUX_DISK_1: piece handle=F:\2014_08_12\JDPKATMD_3_1 tag=BACKUP_RONNIE_0000_100514094607
channel ORA_AUX_DISK_1: restored backup piece 3
channel ORA_AUX_DISK_1: reading from backup piece F:\2014_08_12\JDPKATMD_4_1
channel ORA_AUX_DISK_1: piece handle=F:\2014_08_12\JDPKATMD_4_1 tag=BACKUP_RONNIE_0000_100514094607
channel ORA_AUX_DISK_1: restored backup piece 4
channel ORA_AUX_DISK_1: restore complete, elapsed time: 00:17:41
Finished restore at 16-OCT-14
contents of Memory Script:
{
switch clone datafile all;
}
executing Memory Script
datafile 1 switched to datafile copy
input datafile copy RECID=1 STAMP=861118160 file name=C:\APP\CS\ORADATA\RONNIE\SYSTEM01.DBF
datafile 2 switched to datafile copy
input datafile copy RECID=2 STAMP=861118160 file name=C:\APP\CS\ORADATA\RONNIE\SYSAUX01.DBF
datafile 3 switched to datafile copy
input datafile copy RECID=3 STAMP=861118160 file name=C:\APP\CS\ORADATA\RONNIE\UNDOTBS01.DBF
datafile 4 switched to datafile copy
input datafile copy RECID=4 STAMP=861118160 file name=C:\APP\CS\ORADATA\RONNIE\USERS01.DBF
datafile 5 switched to datafile copy
input datafile copy RECID=5 STAMP=861118160 file name=C:\APP\CS\ORADATA\RONNIE\USERS2.DBF
datafile 6 switched to datafile copy
input datafile copy RECID=6 STAMP=861118160 file name=C:\APP\CS\ORADATA\RONNIE\USERS3.DBF
contents of Memory Script:
{
recover
clone database
noredo
delete archivelog
;
}
executing Memory Script
Starting recover at 16-OCT-14
using channel ORA_AUX_DISK_1
Finished recover at 16-OCT-14
contents of Memory Script:
{
shutdown clone immediate;
startup clone nomount;
sql clone "alter system set db_name =
''RON'' comment=
''Reset to original value by RMAN'' scope=spfile";
sql clone "alter system reset db_unique_name scope=spfile";
shutdown clone immediate;
startup clone nomount;
}
executing Memory Script
database dismounted
Oracle instance shut down
connected to auxiliary database (not started)
Oracle instance started
Total System Global Area 2538741760 bytes
Fixed Size 2178416 bytes
Variable Size 1409286800 bytes
Database Buffers 1107296256 bytes
Redo Buffers 19980288 bytes
sql statement: alter system set db_name = ''RON'' comment= ''Reset to original value by RMAN'' scope=spfile
sql statement: alter system reset db_unique_name scope=spfile
Oracle instance shut down
connected to auxiliary database (not started)
Oracle instance started
Total System Global Area 2538741760 bytes
Fixed Size 2178416 bytes
Variable Size 1409286800 bytes
Database Buffers 1107296256 bytes
Redo Buffers 19980288 bytes
sql statement: CREATE CONTROLFILE REUSE SET DATABASE "RON" RESETLOGS NOARCHIVELOG
MAXLOGFILES 16
MAXLOGMEMBERS 3
MAXDATAFILES 100
MAXINSTANCES 8
MAXLOGHISTORY 2336
LOGFILE
GROUP 1 SIZE 300 M ,
GROUP 2 SIZE 300 M ,
GROUP 3 SIZE 300 M ,
GROUP 4 SIZE 50 M ,
GROUP 5 SIZE 300 M ,
GROUP 6 SIZE 50 M
DATAFILE
'C:\APP\CS\ORADATA\RONNIE\SYSTEM01.DBF'
CHARACTER SET WE8MSWIN1252
contents of Memory Script:
{
set newname for tempfile 1 to
"C:\APP\CS\ORADATA\RONNIE\TEMP01.DBF";
set newname for tempfile 2 to
"C:\APP\CS\ORADATA\RONNIE\TEMP02.DBF";
switch clone tempfile all;
catalog clone datafilecopy "C:\APP\CS\ORADATA\RONNIE\SYSAUX01.DBF",
"C:\APP\CS\ORADATA\RONNIE\UNDOTBS01.DBF",
"C:\APP\CS\ORADATA\RONNIE\USERS01.DBF",
"C:\APP\CS\ORADATA\RONNIE\USERS2.DBF",
"C:\APP\CS\ORADATA\RONNIE\USERS3.DBF";
switch clone datafile all;
}
executing Memory Script
executing command: SET NEWNAME
executing command: SET NEWNAME
renamed tempfile 1 to C:\APP\CS\ORADATA\RONNIE\TEMP01.DBF in control file
renamed tempfile 2 to C:\APP\CS\ORADATA\RONNIE\TEMP02.DBF in control file
cataloged datafile copy
datafile copy file name=C:\APP\CS\ORADATA\RONNIE\SYSAUX01.DBF RECID=1 STAMP=861118211
cataloged datafile copy
datafile copy file name=C:\APP\CS\ORADATA\RONNIE\UNDOTBS01.DBF RECID=2 STAMP=861118211
cataloged datafile copy
datafile copy file name=C:\APP\CS\ORADATA\RONNIE\USERS01.DBF RECID=3 STAMP=861118211
cataloged datafile copy
datafile copy file name=C:\APP\CS\ORADATA\RONNIE\USERS2.DBF RECID=4 STAMP=861118211
cataloged datafile copy
datafile copy file name=C:\APP\CS\ORADATA\RONNIE\USERS3.DBF RECID=5 STAMP=861118211
datafile 2 switched to datafile copy
input datafile copy RECID=1 STAMP=861118211 file name=C:\APP\CS\ORADATA\RONNIE\SYSAUX01.DBF
datafile 3 switched to datafile copy
input datafile copy RECID=2 STAMP=861118211 file name=C:\APP\CS\ORADATA\RONNIE\UNDOTBS01.DBF
datafile 4 switched to datafile copy
input datafile copy RECID=3 STAMP=861118211 file name=C:\APP\CS\ORADATA\RONNIE\USERS01.DBF
datafile 5 switched to datafile copy
input datafile copy RECID=4 STAMP=861118211 file name=C:\APP\CS\ORADATA\RONNIE\USERS2.DBF
datafile 6 switched to datafile copy
input datafile copy RECID=5 STAMP=861118211 file name=C:\APP\CS\ORADATA\RONNIE\USERS3.DBF
contents of Memory Script:
{
Alter clone database open resetlogs;
}
executing Memory Script
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-00601: fatal error in recovery manager
RMAN-03004: fatal error during execution of command
RMAN-10041: Could not re-create polling channel context following failure.
RMAN-10024: error setting up for rpc polling
RMAN-10005: error opening cursor
RMAN-10002: ORACLE error: ORA-03114: not connected to ORACLE
RMAN-03002: failure of Duplicate Db command at 10/16/2014 15:30:52
RMAN-03015: error occurred in stored script Memory Script
RMAN-06136: ORACLE error from auxiliary database: ORA-01092: ORACLE instance terminated. Disconnection forced
ORA-00704: bootstrap process failure
ORA-39700: database must be opened with UPGRADE option
Process ID: 148156
Session ID: 4 Serial number: 5
编辑:
备份是使用Enterprise Manager设置的每晚程序。这是它生成的脚本:
$ rman_script =“备份设备类型磁盘标记'%TAG'数据库;分配 维修型磁盘通道;删除noprompt过时的设备 类型磁盘;发布渠道; “;& br_save_agent_env(); & br_prebackup($ l_db_connect_string,$ l_is_cold_backup,$ l_use_rcvcat, $ l_db_10_or_higher,$ l_backup_strategy,“TRUE”);我的$ result = &安培; br_backup();出口($结果);
答案 0 :(得分:1)
要在NOARCHIVELOG模式下对数据库进行RMAN备份,您需要在运行RMAN BACKUP命令之前将其关闭并以MOUNT模式启动。 Find out more.这是您对开发数据库所做的吗?