Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Usenet -> c.d.o.server -> online backup of the redologs
I am attempting to use standard hot-backup methods to take a complete copy of an instance and start it on another machine. Oracle support hasn't been very helpful, and I need to be certain that what I am doing is assured to be recoverable.
If anybody can help me with this problem, I would appreciate an email copy as well as a follow-up post, as I don't want to miss any replies.
Oracle support advised me to simply restore some redologs from an old cold backup and use those in perpetuity. Following this advice, I restored old copies of my redologs to the target, plus hot backups of all the datafiles from the source (and the required archived logs). When attempting to execute the output of "ALTER DATABASE BACKUP CONTROLFILE TO TRACE", I receive the following error:
SVRMGR> connect internal
Connected.
SVRMGR> @/pkg/prdcrm/backup/prdcrm.sql
CREATE CONTROLFILE REUSE DATABASE "PRDCRM" NORESETLOGS ARCHIVELOG
*
ORA-01503: CREATE CONTROLFILE failed ORA-01229: data file 13 is inconsistent with logs ORA-01110: data file 13: '/pkg/prdcrm/oradata/prdcrm/platinum.dbf'
----------------------------------------------------------------------
On the source, I then attempted to "ALTER DATABASE ADD LOGFILE MEMBER '/backup/redoprdcrm01.log' TO GROUP 1", then immediately "ALTER DATABASE DROP LOGFILE MEMBER '/backup/redoprdcrm01.log'". I did this for each logfile group, and attempted to use the complete set of "INVALID" logfiles (such logfiles appear as "INVALID" in "SELECT * FROM V$LOGFILE", and I had to do an "ALTER SYSTEM ARCHIVE LOG CURRENT" before I could generate one for the active log group) to create the redolog files on the target. Here is the result:
ORA-01503: CREATE CONTROLFILE failed ORA-01192: must have at least one enabled thread
----------------------------------------------------------------------
At this point, I resorted to issuing an 'ALTER SYSTEM ARCHIVE LOG CURRENT' on the source, ensuring that all required archived logs were copied to the target, then copying the online redologs *without halting the instance*. This worked:
My concern is copying the online redologs in this manner. The "Oracle8 Backup and Recovery Handbook" (ISBN 0-07-882389-7) has the following warning on page 94: "You should never take a backup of the online redo log files, as the online log file has the 'end of backup' marker and would cause corruptions if used during recovery."
Since I have issued the 'ALTER SYSTEM ARCHIVE LOG CURRENT', I assume that the 'end of backup' marker is not in the 'enabled thread.'
I don't want to depend upon the control file in a full restore situation, but it seems that I cannot create a replacement controlfile unless I have the redologs. Does anyone know of a better way?
![]() |
![]() |