Oracle – Point in Time Recovery with TDPO

ibm-tsmoraclerecoveryrestore

I have to do a Point in Recovery to 2017-09-12:13:30:00. I'm running in to a TDPO/TSM error ANS1302E (RC2). List backup shows that the backup and archivelogs are available for restore. Anyone had that issue before?

rman target /
Startup mount
RUN {
   allocate channel t0 type 'sbt_tape' parms
   'ENV=(TDPO_OPTFILE=/opt/tivoli/tsm/client/oracle/bin64/tdpo.opt)';
   set until time "to_date('2017-09-12:13:30:00', 'yyyy-mm-dd:hh24:mi:ss')";

   restore database;
   recover database;

   release channel t0;

    }
connected to target database (not started)

Oracle instance started
database mounted

Total System Global Area    2399141888 bytes

Fixed Size                     8623496 bytes
Variable Size                671091320 bytes
Database Buffers            1711276032 bytes
Redo Buffers                   8151040 bytes

RMAN>
RMAN> 2> 3> 4> 5> 6> 7> 8> 9> 10>
allocated channel: t0
channel t0: SID=135 device type=SBT_TAPE
channel t0: Data Protection for Oracle: version 8.1.0.0

executing command: SET until clause

Starting restore at 12-SEP-17

channel t0: starting datafile backup set restore
channel t0: specifying datafile(s) to restore from backup set
channel t0: restoring datafile 00004 to /opt/oracle/oradata/datafile/DBOLR2T/use
channel t0: reading from backup piece DB_954446866_1042_1
channel t0: ORA-19870: Fehler beim Zuruckschreiben von Backup Piece DB_954446866
ORA-19507: Fehler beim Abrufen der sequentiellen Datei, Handle="DB_954446866_104
ORA-27029: skgfrtrv: sbtrestore hat Fehler zuruckgegeben
ORA-19511: Kein RMAN-, sondern Media Manager- oder herstellerspezifischer Fehler
ANS1302E (RC2)    No objects on server match query

Best Answer

As the error message already states, this is not an Oracle issue. The backup piece simply can not be found on the TSM server where Oracle searches - based on the tdpo configuration.

Maybe it was created with a different tdpo configuration under a different node name or in another filespace. Maybe it is simply not there on the TSM server.

You can query the contents of TSM for this tdpo config with:

tdposync query -tdpo_optfile=/opt/tivoli/tsm/client/oracle/bin64/tdpo.opt

Most likely you will not find DB_954446866_1042_1 in the list, and that is the problem. Ask the TSM administrators to search for DB_954446866_1042_1 in their catalog. If they find it in a different filespace, or registered under a different nodename, you can restore it by collaborating with them and using the correct tdpo configuration. If they can not find it, you are out of luck as that backup simply does not exist on TSM.