7 x 24 在线支持!
Oracle Handling Rollback/Undo Segment Corruptions "Last Options"
This section outlines the absolute final options available for recovering
a database. If you have come here then one or more of the following
have happened:
You have lost a "vital" datafile (or have a corruption on it)
and have no useful backup of this file
and are either not in ARCHIVELOG mode OR do not have all archivelogs
since the file was first created
Last chance:
Please note if you have lost all copies of a datafile but DO still have
the ARCHIVE logs from when the file was first created it is still possible
to recover the file.
Eg:
ALTER DATABASE CREATE DATAFILE '....' [as '...'] ;
RECOVER DATAFILE '....'
ALTER DATABASE DATAFILE '....' ONLINE;
If you are in this scenario try to recover the datafile using these
steps before proceeding below.
If you have reached this line there are no options left to keep the
CURRENT version of the database up and running in a fully supported manner.
It is advisable to shutdown the instance and take a BACKUP of the
current database NOW in order to provide a fall-back position if the
chosen course of action below fails. (Eg: if you find your backup is bad)
The outline options available are:
Revert to an old COLD backup
- eg: If in NOARCHIVELOG mode
Point in time recovery to an older point in time that is consistent
- requires a good backup and any necessary archive logs
- ALL files have to be restored and the whole DB rolled forward
to a suitable point in time.
Rebuild of DB from some logical export / copy
- Requires there to already be a good logical backup of the database
- NB: You have to RE-CREATE the database for this option.
Attempt to export the current database and rebuild a new database
- using either export or DUL or some other option
- If the database will not open unsupported means may be needed
to force the DB open. See Note:41399.1 for details of
forcing a database open.
Let the system continue running in its current form until
a more suitable period is available to rebuild
- the database is not supportable in this form but the risk of
a failure MAY be very small and hence a customer may prefer
to schedule time for a proper rebuild.
**NOTE** It is important to stress that a database left running
with a corrupt or unrecovered rollback segment may run for only
a few minutes and may die at any time. If you are sure there are
only a few blocks affected by the transaction/s and that these
are not used by the main application then deferring a rebuild
may be an option but A REBUILD MUST BE PERFORMED.