Restore controlfile giving an error
While restoring a controlfile from autobackup, the rman command is taking a very long time (more than 1 hour). At the end, it is giving the error below.
RMAN Command:
set dbid=xxxxxxxxxx;
run
{
ALLOCATE CHANNEL CH00 TYPE 'SBT_TAPE'
parms="ENV=(NB_ORA_POLICY=db2_full_db,NB_ORA_SERV=masterserver,NB_ORA_CLIENT=db2,NB_ORA_SCHED=Full,SBT_LIBRARY=/u01/app/oracle/product/11.2.0.3/db_1/lib/libobk.so)";
restore controlfile from autobackup;
RELEASE CHANNEL CH00;
}
Execution of the command:
executing command: SET DBID
using target database control file instead of recovery catalog
allocated channel: CH00
channel CH00: SID=3061 device type=SBT_TAPE
channel CH00: Veritas NetBackup for Oracle - Release 7.5 (2012020723)
Starting restore at 22-JUL-13
channel CH00: looking for AUTOBACKUP on day: 20130720
channel CH00: AUTOBACKUP found: c-2362182060-20130720-02
channel CH00: restoring control file from AUTOBACKUP c-2362182060-20130720-02
released channel: CH00
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of restore command at 07/22/2013 16:35:37
ORA-19870: error while restoring backup piece c-2362182060-20130720-02
ORA-19507: failed to retrieve sequential file, handle="c-2362182060-20130720-02", parms=""
ORA-27029: skgfrtrv: sbtrestore returned error
ORA-19511: Error received from media manager layer, error text:
Failed to process backup file <c-2362182060-20130720-02>
Comments:
The database was started in nomount.
This is done to restore the database from netbackup tape taken from another machine. Means that RMAN is executed from db1 and the backup was previously taken from db2.
Thanks to help.
Important lines in bprd log (after multiple attempts from client bscst to list backups for client name billdb2):
03:40:22.391 [16107] <2> process_request: command C_BPLIST_4_5 (82) received03:40:22.391 [16107] <2> process_request: list request = 329199 82 oracle oinstall billdb2 bscst bscst NONE 0 3 999 1374145200 1374318000 4 4 1 1 1 0 4 100 100 4 0 C C C C C 0 2 0 0 003:40:22.393 [16107] <8> file_to_cache_item: [vnet_addrinfo.c:6555] fopen() failed ERRNO=0 FILE=/usr/openv/var/host_cache/1b6/27bcfbb6+0,1,50,0,2,0+billdb2.txt03:40:22.417 [16107] <16> is_redirected_restore_allowed: One or more input parameters are invalid.......03:40:22.418 [16107] <2> get_type_of_client_list_restore: list and restore not specified for bscst03:40:22.418 [16107] <2> get_type_of_client_free_browse: Free browse allowed for bscst03:40:22.418 [16107] <2> db_freeEXDB_INFO: ?03:40:22.420 [16107] <2> db_valid_client: no alternate names to check in /usr/openv/netbackup/db/altnames - No such file or directory (2)03:40:22.420 [16107] <2> db_valid_client: client_name=billdb2 peername=bscst03:40:22.420 [16107] <2> db_valid_client: bscst is not a valid client03:40:22.421 [16107] <2> process_request: client billdb2 peername bscst is invalid for list requestRedirected restores are not allowed by default.See this topic in NetBackup for Oracle Administrator's Guide http://www.symantec.com/docs/DOC5175Redirecting a restore to a different clientConfiguring the NetBackup server for redirected restoresTo perform redirected restores, configure the NetBackup server to allow this type of restore.To remove restrictions for all clients, create the following file on the NetBackup master server:UNIX/Linux: /usr/openv/netbackup/db/altnames/No.RestrictionsWindows: install_path\NetBackup\db\altnames\No.Restrictions
To allow clients to restore only from specific clients, create the following file on the NetBackup master server:UNIX/Linux: /usr/openv/netbackup/db/altnames/client_nameWindows: install_path\NetBackup\db\altnames\client_nameWhere client_name is the name of the client that is allowed to perform the redirected restore (the destination client). To the file, add the name of the NetBackup for Oracle source client.Hope this helps!

