今天在执行nbu恢复oracle的问题,发现总是出现问题
恢复脚本是没问题的
RMAN> run
{
allocate channel c1 type 'sbt_tape';
send 'NB_ORA_CLIENT=mytest1';
restore controlfile from '/cntrl_6255_1_880381344';
release channel c1;
}
using target database control file instead of recovery catalog
allocated channel: c1
channel c1: SID=59 device type=SBT_TAPE
channel c1: Veritas NetBackup for Oracle - Release 7.6 (2013111313)
sent command to channel: c1
Starting restore at 22-MAY-15
channel c1: restoring control file
released channel: c1
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of restore command at 05/22/2015 14:45:16
ORA-19870: error while restoring backup piece /cntrl_6255_1_880381344
ORA-19507: failed to retrieve sequential file, handle="/cntrl_6255_1_880381344", parms=""
ORA-27029: skgfrtrv: sbtrestore returned error
ORA-19511: Error received from media manager layer, error text:
Backup file not found in NetBackup catalog
但通过bplist从nbu备份服务器上查看也是可以看到的,但就是报这个错,经过分析,感觉可能是用户的问题,原来备份时的用户是oracle,而现在的恢复环境是oratest。所以新建新建一个oracle用户来,建好后对oracle用户授好权后,再恢复报如下错误:
RMAN> run
{
allocate channel c1 type 'sbt_tape';
send 'NB_ORA_CLIENT=mytest1';
restore controlfile from '/cntrl_6255_1_880381344';
release channel c1;
}
using target database control file instead of recovery catalog
allocated channel: c1
channel c1: SID=59 device type=SBT_TAPE
channel c1: Veritas NetBackup for Oracle - Release 7.6 (2013111313)
sent command to channel: c1
Starting restore at 25-MAY-15
released channel: c1
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of restore command at 05/25/2015 17:23:18
RMAN-06172: no AUTOBACKUP found or specified handle is not a valid copy or piece
后来经过咨询nbu的工程师,得到了答案!
原因是:
1、ORACLE_HOME的属主,要与原环境相同。也就是说原环境中是oracle用户,那么新环境也必须是oracle
2、在使用oracle_link链接时,必须是使用与原环境相同的用户进行执行
2、恢复时,使用的执行用户,必须与原环境相同的用户。
这些是nbu没有公布的,真坑!
恢复脚本是没问题的
RMAN> run
{
allocate channel c1 type 'sbt_tape';
send 'NB_ORA_CLIENT=mytest1';
restore controlfile from '/cntrl_6255_1_880381344';
release channel c1;
}
using target database control file instead of recovery catalog
allocated channel: c1
channel c1: SID=59 device type=SBT_TAPE
channel c1: Veritas NetBackup for Oracle - Release 7.6 (2013111313)
sent command to channel: c1
Starting restore at 22-MAY-15
channel c1: restoring control file
released channel: c1
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of restore command at 05/22/2015 14:45:16
ORA-19870: error while restoring backup piece /cntrl_6255_1_880381344
ORA-19507: failed to retrieve sequential file, handle="/cntrl_6255_1_880381344", parms=""
ORA-27029: skgfrtrv: sbtrestore returned error
ORA-19511: Error received from media manager layer, error text:
Backup file not found in NetBackup catalog
但通过bplist从nbu备份服务器上查看也是可以看到的,但就是报这个错,经过分析,感觉可能是用户的问题,原来备份时的用户是oracle,而现在的恢复环境是oratest。所以新建新建一个oracle用户来,建好后对oracle用户授好权后,再恢复报如下错误:
RMAN> run
{
allocate channel c1 type 'sbt_tape';
send 'NB_ORA_CLIENT=mytest1';
restore controlfile from '/cntrl_6255_1_880381344';
release channel c1;
}
using target database control file instead of recovery catalog
allocated channel: c1
channel c1: SID=59 device type=SBT_TAPE
channel c1: Veritas NetBackup for Oracle - Release 7.6 (2013111313)
sent command to channel: c1
Starting restore at 25-MAY-15
released channel: c1
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of restore command at 05/25/2015 17:23:18
RMAN-06172: no AUTOBACKUP found or specified handle is not a valid copy or piece
后来经过咨询nbu的工程师,得到了答案!
原因是:
1、ORACLE_HOME的属主,要与原环境相同。也就是说原环境中是oracle用户,那么新环境也必须是oracle
2、在使用oracle_link链接时,必须是使用与原环境相同的用户进行执行
2、恢复时,使用的执行用户,必须与原环境相同的用户。
这些是nbu没有公布的,真坑!
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/29371470/viewspace-1676281/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/29371470/viewspace-1676281/