Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Usenet -> c.d.o.misc -> Re: Recover a single table
As you stated, a datafile does not necessarily hold only one table.
Therefore if you recover the datafile, you'll overwrite all objects that are
stored in that datafile. You also can't just lay an older datafile over a
newer one because the controlfile will get cranky about timestamps being out
of sync. You'd have to use the 'recover datafile' command to get it up to
sync in your controlfiles.
You can determine what is in the datafile by getting file_id from dba_data_files and then matching that to file_id in dba_extents. Select the objects from dba_extents with that file_id.
Anyway, the quick possibilities are:
a) Recover the whole db and roll forward w/ redo logs up until the problem
point. Therefore losing any new stuff in other objects.
OR
b) Restore the db into another database and export the table there. Then
import it.
That would be the safest alternatives. Otherwise you're getting risky.
Jack Zhu wrote in message <37C57732.42579361_at_monmouth.com>...
>Using hot backup mode. (didn't use 'export' way)
>
>Now I try to recover a single table without any impact to other ones. I
>think I can use the 'recover datafile' way to do this, right?
>
>1. First I have to find out which datafile(s) I need to recover, how do
>I know which datafile the certain table is in? Suppose there're more
>than one datafile in each tablespace. If there's only one datafile in
>tablespace, that's easy.
>
>2. What's the best way to recover a single table(without using 'export'
>and 'import')?
>
>Thanks!!!
>
>
>
Received on Thu Aug 26 1999 - 13:36:56 CDT
![]() |
![]() |