[#if ([#fileinfo /existence/ [tgt_file] ]) |then|
#set done 1
|else| #output Error - [tgt_file] file does not exist.
]
]
===========================================
== Start the restoration work
===========================================
#set count [#compute ([#charfind partfile 1 .] + 1)]
#set tfile [#charget partfile [count] for [#compute ([#charcount partfile] -
[count] + 1) ] ]
#set tloc [#charget temploc 1 FOR [#compute ([#charfind temploc 1 .] - 1) ] ]
#set count 1 == no need for part 0
#set inp 0
#set done1 0
[#loop |while| (count < [parts]) |do|
#set done1 [myarr:vol_part([count])]
#output [done1]
#set inp [#charget done1 1 for [#compute ([#charfind done1 1 .] - 1) ] ]
sink [stop $e6416]
fup /inline,name $E6416/
+ volume [work_vol1]
+ purge [work_vol1].[partfile] !
+ purge [work_vol2].[partfile] ! == sometimes weirdly the partition stays
== so let us leave this purge as is
+ purge [temploc].[tfile] ! == delete previously restored partition
#output ********************************************
#output Retrieving Secondary Partition no. [count]
#output Retrieving [inp].[partfile]
#output ********************************************
#output
[cmd] [AN], [inp].[partfile], partonly, listall, vol [temploc], nounload
+ set like [temploc].[tfile]
+ set part (1, [work_vol2],[pext],[sext],~[0,0,0,0~] )
+ reset partonly
+ create [work_vol1].[partfile]
+ alter [work_vol1].[partfile],part(1,[tloc])
+ copy [work_vol1].[partfile],[tgt_file]
+ alter [work_vol1].[partfile],part(1,[work_vol2])
+ exit
#set count [#compute (count + 1) ]
]
#output ***************************************
#output Activity Completed; Performing cleanup
#output ***************************************
fup purge [temploc].[tfile] !
fup purge [work_vol1].[partfile]!
#setmany yy mm dd hh mi ss, [#contime [#timestamp]]
#set etime [mm]\[dd]\[yy] [hh]:[mi]:[ss]
#output Start time: [stime]
#output End time: [etime]
#unframe
Restoring SQL Files
These types of SQL files can be explicitly named in
restore-files
, or restored using the FROM
CATALOG qualifier: base tables, catalog tables, indexes on base tables and catalog tables, and
SQL shorthand views.
CAUTION:
BACKUP is normally used as a secondary recovery method for SQL objects; the TMF
recovery process is used as the primary method. An SQL object recovered with RESTORE might
be inconsistent with the current catalog description of the object.
166 RESTORE