You are on page 1of 13

5/15/2015 Document1493674.

MasterNote:OverviewofDatabaseControlFiles(DocID1493674.1)

InthisDocument

Purpose
Scope
Details
Concepts
ControlfileContents
ControlfileStructure
Circularreuserecords
Noncircularreuserecords
ControlFileParameters
CONTROL_FILES
CONTROL_FILE_RECORD_KEEP_TIME
ControlfileCreation
CREATECONTROLFILE
TroubleshootingaftercreatingControlfiles
CheckingforMissingorExtraFiles
HandlingErrorsduringCREATECONTROLFILE
ControlFileExpansion
ControlfileEnqueue
ControlfileDataDictionaryViews
12cRelated:
ControlfilewaitEvents
Controlfileparallelwrite
Controlfilesequentialread
Controlfilesinglewrite
ControlfileBackups
RMANCONTROLFILEAUTOBACKUP
BACKUPCONTROLFILEClause
GuidelinesforControlfiles
ProvideFilenamesfortheControlFiles
MultiplexControlFilesonDifferentDisks
BackUpControlFiles
DroppingControlfiles
AdditionalResources
KnownIssuesandResolutions
References

APPLIESTO:

https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrlstate=15whalhnui_383&id=1493674.1 1/13
5/15/2015 Document1493674.1

OracleDatabaseEnterpriseEditionVersion9.2.0.8to12.1.0.1[Release9.2to12.1]
Informationinthisdocumentappliestoanyplatform.

PURPOSE

ThepurposeofthisdocumentistoprovideanoverviewoftheDatabasecontrolfileconcepts.

SCOPE

ThedetailsinthisdocumentinitiallyappliestoanonRACDatabasesetup.

DETAILS

Concepts

Thedatabasecontrolfileisasmallbinaryfilenecessaryforthedatabasetostartandoperatesuccessfully.Acontrol
fileisupdatedcontinuallybyOracleduringdatabaseuse,soitmustbeavailableforwritingwheneverthedatabaseis
open.Ifforsomereasonthecontrolfileisnotaccessible,thenthedatabasecannotfunctionproperly.Eachcontrolfile
isassociatedwithonlyoneOracledatabase.

Thecontrolfileservesthefollowingpurposes:

Itcontainsinformationaboutdatafiles,onlineredologfiles,andotherfilesthatarerequiredtoopenthe
database.
Thecontrolfiletracksstructuralchangestothedatabase.Forexample,whenanadministratoradds,renames,
ordropsadatafileoronlineredologfile,thedatabaseupdatesthecontrolfiletoreflectthischange.
Itcontainsmetadatathatmustbeaccessiblewhenthedatabaseisnotopen.

ControlfileContents

AControlfilecontainsinformationsuchas

Thedatabasename
Thetimestampofdatabasecreation
Thenamesandlocationsofassociateddatafilesandredologfiles
Tablespaceinformation
Datafileofflineranges
Theloghistory
Archivedloginformation
Backupsetandbackuppieceinformation
Backupdatafileandredologinformation
Datafilecopyinformation
Thecurrentlogsequencenumber
Checkpointinformation

Thedatabasenameandtimestamporiginatefromthedatabasecreation.Thedatabasenameistakenfromeitherthe
namespecifiedbytheDB_NAMEinitializationparameterorthenameusedintheCREATEDATABASEstatement.

Eachtimethatadatafileoraredologfileisaddedto,renamedin,ordroppedfromthedatabase,thecontrolfileis
updatedtoreflectthisphysicalstructurechange.Thesechangesarerecordedsothat:

Oraclecanidentifythedatafilesandredologfilestoopenduringdatabasestartup

Oraclecanidentifyfilesthatarerequiredoravailableincasedatabaserecoveryisnecessary

https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrlstate=15whalhnui_383&id=1493674.1 2/13
5/15/2015 Document1493674.1

Therefore,ifyoumakeachangetothephysicalstructureofyourdatabase(usingALTERDATABASEstatements),then
youshouldimmediatelymakeabackupofyourcontrolfile.

OracleDatabaseConcepts10gRelease1(10.1)
PartNumberB1074301

http://docs.oracle.com/cd/B14117_01/server.101/b10743/physical.htm#i10135

ControlfileStructure

Informationaboutthedatabaseisstoredindifferentsectionsofthecontrolfile.Eachsectionisasetofrecordsabout
anaspectofthedatabase.Forexample,onesectioninthecontrolfiletracksdatafilesandcontainsasetofrecords,
oneforeachdatafile.Eachsectionisstoredinmultiplelogicalcontrolfileblocks.Recordscanspanblockswithina
section.

Thecontrolfilecontainsthefollowingtypesofrecords:

Circularreuserecords

Theserecordscontainnoncriticalinformationthatiseligibletobeoverwrittenifneeded.Whenallavailablerecordslots
arefull,thedatabaseeitherexpandsthecontrolfiletomakeroomforanewrecordoroverwritestheoldestrecord.
Examplesincluderecordsabout:

LOGHISTORY
OFFLINERANGE
ARCHIVEDLOG
BACKUPSET
BACKUPPIECE
BACKUPDATAFILE
BACKUPREDOLOG
DATAFILECOPY
BACKUPCORRUPTION
COPYCORRUPTION
DELETEDOBJECT
PROXYCOPY

Noncircularreuserecords

Theserecordscontaincriticalinformationthatdoesnotchangeoftenandcannotbeoverwritten.Examplesof
informationincludetablespaces,datafiles,onlineredologfiles,andredothreads.OracleDatabaseneverreusesthese
recordsunlessthecorrespondingobjectisdroppedfromthetablespace.Examplesofnoncircularcontrolfilesections
(theonesthatcanonlyexpand)

DATABASE(info)
CKPTPROGRESS(Checkpointprogress)
REDOTHREAD,REDOLOG(Logfile)
DATAFILE(DatabaseFile)
FILENAME(DatafileName)
TABLESPACE
TEMPORARYFILENAME
RMANCONFIGURATION

Readingandwritingthecontrolfileblocksisdifferentfromreadingandwritingdatablocks.Forthecontrolfile,Oracle
https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrlstate=15whalhnui_383&id=1493674.1 3/13
5/15/2015 Document1493674.1

Databasereadsandwritesdirectlyfromthedisktotheprogramglobalarea(PGA).Eachprocessallocatesacertain
amountofitsPGAmemoryforcontrolfileblocks.

OracleDatabaseConcepts11gRelease2(11.2)
PartNumberE2578901

http://docs.oracle.com/cd/E11882_01/server.112/e25789/physical.htm#i10135

ControlFileParameters

CONTROL_FILES

Thisparameterisspecifiedinpfile/spfile.Thisparameterisusedtospecifythelocationofcontrolfiles.
CONTROL_FILESspecifiesoneormorenamesofcontrolfiles,separatedbycommas.Ainstanceusesthisparameter
tolocatethecontrolfilesforthedatabasestartup.

CONTROL_FILE_RECORD_KEEP_TIME

CONTROL_FILE_RECORD_KEEP_TIMEspecifiestheminimumnumberofdaysbeforeareusablerecordinthecontrol
filecanbereused.Intheeventanewrecordneedstobeaddedtoareusablesectionandtheoldestrecordhasnot
agedenough,therecordsectionexpands.Ifthisparameterissetto0,thenreusablesectionsneverexpand,and
recordsarereusedasneeded.

Note:

Itisnotmandatorythatalltherecordswillbereusedafterdaysspecified
forCONTROL_FILE_RECORD_KEEP_TIME.ItistheMINIMUMnumberofdaysthatthedetailsareretained.
Thisparameterappliesonlytorecordsinthecontrolfilethatarecircularlyreusable(suchasarchivelogrecords
andvariousbackuprecords).Itdoesnotapplytorecordssuchasdatafile,tablespace,andredothreadrecords,
whichareneverreusedunlessthecorrespondingobjectisdroppedfromthetablespace.

ControlfileCreation

Itisnecessaryforyoutocreatenewcontrolfilesinthefollowingsituations:

Allcontrolfilesforthedatabasehavebeenpermanentlydamagedandyoudonothaveacontrolfilebackup.
Youwanttochangethedatabasename.Forexample,youwouldchangeadatabasenameifitconflictedwith
anotherdatabasenameinadistributedenvironment.
YouwanttochangetheparametersfromtheCREATEDATABASEorCREATECONTROLFILEcommands:
MAXLOGFILES,MAXLOGMEMBERS,MAXLOGHISTORY,andMAXINSTANCES,whenthecompatibilityisearlier
than10.2.0.Ifcompatibilityis10.2.0orlater,youdonothavetocreatenewcontrolfileswhenyoumakesucha
changethecontrolfilesautomaticallyexpand,ifnecessary,toaccommodatethenewconfigurationinformation.

Note:

YoucanchangethedatabasenameandDBID(internaldatabaseidentifier)usingtheDBNEWIDutility.SeeOracle
DatabaseUtilitiesforinformationaboutusingthisutility.

YoucanalsocreateabackupoftheCreateControlfilecommandtoa(trace)fileusing"ALTERDATABASEBACKUP
CONTROLFILETO'FILENAME'/TRACE".

CREATECONTROLFILE
https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrlstate=15whalhnui_383&id=1493674.1 4/13
5/15/2015 Document1493674.1

Tocreateacontrolfile,

YoumusthavetheSYSDBAsystemprivilege.
ThedatabaseshouldbeinNomountStage.

YoucancreateanewcontrolfileforadatabaseusingtheCREATECONTROLFILEstatement.Thefollowingstatement
createsanewcontrolfilefortheproddatabase(adatabasethatformerlyusedadifferentdatabasename)

CREATECONTROLFILE
SETDATABASEprod
LOGFILEGROUP1('/u01/oracle/prod/redo01_01.log',
'/u01/oracle/prod/redo01_02.log'),
GROUP2('/u01/oracle/prod/redo02_01.log',
'/u01/oracle/prod/redo02_02.log'),
GROUP3('/u01/oracle/prod/redo03_01.log',
'/u01/oracle/prod/redo03_02.log')
RESETLOGS
DATAFILE'/u01/oracle/prod/system01.dbf'SIZE3M,
'/u01/oracle/prod/rbs01.dbs'SIZE5M,
'/u01/oracle/prod/users01.dbs'SIZE5M,
'/u01/oracle/prod/temp01.dbs'SIZE5M
MAXLOGFILES50
MAXLOGMEMBERS3
MAXLOGHISTORY400
MAXDATAFILES200
MAXINSTANCES6
ARCHIVELOG

Cautions:

TheCREATECONTROLFILEstatementcanpotentiallydamagespecifieddatafilesandredologfiles.Omittinga
filenamecancauselossofthedatainthatfile,orlossofaccesstotheentiredatabase.Usecautionwhen
issuingthisstatementandbesuretofollowtheinstructionsin"StepsforCreatingNewControlFiles".
Ifthedatabasehadforcedloggingenabledbeforecreatingthenewcontrolfile,andyouwantittocontinueto
beenabled,thenyoumustspecifytheFORCELOGGINGclauseintheCREATECONTROLFILEstatement.Refer
"SpecifyingFORCELOGGINGMode".

OracleDatabaseAdministrator'sGuide11gRelease2(11.2)
PartNumberE2549402

http://docs.oracle.com/cd/E11882_01/server.112/e25494/control.htm#ADMIN11290

OracleDatabaseSQLLanguageReference11gRelease2(11.2)
PartNumberE2608802

http://docs.oracle.com/cd/E11882_01/server.112/e26088/statements_5003.htm#SQLRF01203

TroubleshootingaftercreatingControlfiles

https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrlstate=15whalhnui_383&id=1493674.1 5/13
5/15/2015 Document1493674.1

CheckingforMissingorExtraFiles

Aftercreatinganewcontrolfileandusingittoopenthedatabase,checkthealertlogtoseeifthedatabasehas
detectedinconsistenciesbetweenthedatadictionaryandthecontrolfile,suchasadatafileinthedatadictionarythat
thecontrolfiledoesnotlist.

Ifadatafileexistsinthedatadictionarybutnotinthenewcontrolfile,thedatabasecreatesaplaceholderentryinthe
controlfileunderthenameMISSINGnnnn,wherennnnisthefilenumberindecimal.MISSINGnnnnisflaggedinthe
controlfileasbeingofflineandrequiringmediarecovery.

IftheactualdatafilecorrespondingtoMISSINGnnnnisreadonlyorofflinenormal,thenyoucanmakethedatafile
accessiblebyrenamingMISSINGnnnntothenameoftheactualdatafile.IfMISSINGnnnncorrespondstoadatafile
thatwasnotreadonlyorofflinenormal,thenyoucannotusetherenameoperationtomakethedatafileaccessible,
becausethedatafilerequiresmediarecoverythatisprecludedbytheresultsofRESETLOGS.Inthiscase,youmust
dropthetablespacecontainingthedatafile.

Conversely,ifadatafilelistedinthecontrolfileisnotpresentinthedatadictionary,thenthedatabaseremoves
referencestoitfromthenewcontrolfile.Inbothcases,thedatabaseincludesanexplanatorymessageinthealertlog
toletyouknowwhatwasfound.

HandlingErrorsduringCREATECONTROLFILE

IfOracleDatabasesendsyouanerror(usuallyerrorORA01173,ORA01176,ORA01177,ORA01215,orORA01216)
whenyouattempttomountandopenthedatabaseaftercreatinganewcontrolfile,themostlikelycauseisthatyou
omittedafilefromtheCREATECONTROLFILEstatementorincludedonethatshouldnothavebeenlisted.Inthiscase,
youshouldrestorethemissingfilesandrecreatethecontrolfile.

OracleDatabaseAdministrator'sGuide11gRelease2(11.2)
PartNumberE2549402

http://docs.oracle.com/cd/E11882_01/server.112/e25494/control.htm#ADMIN11293

ControlFileExpansion

ControlFileexpansioncanoccurinbothcircularandnoncircularsections.

Noncircularreuse(e.g.datafilerecords).

Iftherearenoemptyslotsforadatafile,andyouaddanewdatafiletothedatabase,inoracle8,thedatafilerecord
sectionwillexpandtoallowthenewfiletoberecordedinthecontrolfile.Noncircularreuserecordscannotbe
overwrittenuntiltheobjectitdescribesisremovedfromthedatabase.

Circularreuse(e.g.archivelogrecords)

Circularreuserecordscanbeoverwritten.Typically,theoldestrecordwillbeoverwrittenwheneverthereisaneedto
makeroomforanewentry,e.g.whenanewarchivelogisgeneratedandthereisnomorespaceinthearchivelog
sectionofthecontrolfile,theoldestarchivelogentrywillbeoverwrittenbythenewarchivelogentry.Whenthe
CONTROL_FILE_RECORD_KEEP_TIMEissetto0,thentheCircularreusesectionscannotexpandandareonlyreused.

Thesizeofthedatabasecontrolfilegrowthmaydependonthenumberof:

Backupsthatyouperform
Archivedredologsthatthedatabasegenerates
NumberofDaysthatthisinformationisstoredinthecontrolfile
https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrlstate=15whalhnui_383&id=1493674.1 6/13
5/15/2015 Document1493674.1

andmanyotherfactorseachdependentoncorrespondingcontrolfilesection.

TheDatabasealertlogmaycontaintheentriessimilartothis.

TueApr1916:44:522011
Expandedcontrolfilesection11from28to109records
Requestedtogrowby81recordsadded3blocksofrecords

Theabovealertlogmessagecanbeseenwhenwethearchivelogsection(section11)incontrolfileexpands.This
sectioncouldexpandattimeswhenthereistooheavylogswitchinginthedatabase.

RMAN>CROSSCHECKarchivelogall;
RMAN>LISTEXPIREDarchivelogall;
RMAN>DELETEEXPIREDarchivelogall;

ControlfileEnqueue

Controlfileenqueueisacriticalresourcethatisobtainedbyaprocesswhichperformsacontrolfiletransaction.An
updatetothecontrolfileistermedascontrolfiletransaction.

FewsituationswhenCFEnqueueisacquiredare

RedologSwitch
RedologArchival
BEGIN/ENDBACKUP
Checkpoint
PerformingCrashRecovery

WhenanyprocessholdstheCFenqueueforlongtime,theotherprocesseswhichneedtoperformtheControlfile
transactionwillbewaitingtoacquiretheenqueue.Holdingtheenqueueforverylongtimecanleadtodatabasehang.
Hencethereisatimeoutsetforholdingthecontrolfileenqueue.Thetimeoutis900secs(15min).Iftheprocess
exceedsthistimeout,thentheholderprocessiskilledbykillingthesessionofholdingprocess.Thewaitingprocess
normallykillstheholdingprocesswhichexceedsthetimeout.Thentheerrorisloggedinthealertlog.

ORA00600:internalerrorcode,arguments:[2103](10.2.0.3andEarlier)
ORA00494:enqueue[CF]heldfortoolong(morethan900seconds)by'inst<instid>,ospid<ospid>'
(10.2.0.4andlater)

Whenthewaitingprocessisunabletokilltheholdingprocess,thenanORA239errorisraised.
CommoncausesforCFEnqueueTimeoutare

VeryslowI/OsubsystemwheretheControlfilesarestored.
Frequentlogswitchingredologstoosmallorinsufficientlogs
AsyncI/Oissueormultipledb_writers,youcan'tusebothofthem,backoutone.
OS/Hardwareissues

Note406191.1DiagnosingORA600[2103]IssuesinaNONRACenvironment
Note1272990.1ORA00240ReportedInAlert.LogAfterStartup
Note1068799.1DiskI/OContention/SlowCanLeadtoORA239andInstanceCrash(DocID1068799.1)

https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrlstate=15whalhnui_383&id=1493674.1 7/13
5/15/2015 Document1493674.1

ControlfileDataDictionaryViews

Thefollowingviewsdisplayinformationaboutcontrolfiles

View Description

V$DATABASE Displaysdatabaseinformationfromthe
controlfile

V$CONTROLFILE Liststhenamesofcontrolfiles

V$CONTROLFILE_RECORD_SECTION Displaysinformationaboutcontrolfile
recordsections

V$PARAMETER Displaysthenamesofcontrolfilesas
specifiedintheCONTROL_FILES
initializationparameter

12cRelated:

In12cduetothemultitenantarchitecture,additionalcolumnCON_IDareaddedtotheaboveviews,whichcontains
anyofthebelowvalues.

0:ThisshowsdatarelatedtoentireCDBorrelatedtoentiredatabaseincaseofnonCDB.
1:Thisvalueisforrowswhichcontainsdatarelatedtoonlytheroot
n:WherenistheapplicablecontainerIDfortherowscontainingdata

ControlfilewaitEvents

Controlfileparallelwrite

Thiseventoccurswhilethesessioniswritingphysicalblockstoallcontrolfiles.Thishappenswhen:

Thesessionstartsacontrolfiletransaction(tomakesurethatthecontrolfilesareuptodateincasethe
sessioncrashesbeforecommittingthecontrolfiletransaction)

Thesessioncommitsatransactiontoacontrolfile

Changingagenericentryinthecontrolfile,thenewvalueisbeingwrittentoallcontrolfiles

WaitTime:Thewaittimeisthetimeittakestofinishallwritestoallcontrolfiles.

Parameter Description

files Thenumberofcontrolfilestowhich
thesessioniswriting

blocks Thenumberofblocksthatthesession
iswritingtothecontrolfile

requests ThenumberofI/Orequestswhichthe
sessionwantstowrite

Controlfilesequentialread

https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrlstate=15whalhnui_383&id=1493674.1 8/13
5/15/2015 Document1493674.1

Readingfromthecontrolfile.Thishappensinmanycases.Forexample,while:

Makingabackupofthecontrolfiles

Sharinginformation(betweeninstances)fromthecontrolfile

Readingotherblocksfromthecontrolfiles

Readingtheheaderblock

WaitTime:Thewaittimeistheelapsedtimeoftheread.

Parameter Description

file# Thecontrolfilefromwhichthesession
isreading

block# Blocknumberinthecontrolfilefrom
wherethesessionstartstoread.The
blocksizeisthephysicalblocksizeof
theport(usually512bytes,someUNIX
portshave1or2Kilobytes).

blocks Thenumberofblocksthatthesession
istryingtoread

Controlfilesinglewrite

Thiswaitissignaledwhilethecontrolfile'ssharedinformationiswrittentodisk.Thisisanatomicoperationprotected
byanenqueue(CF),sothatonlyonesessionatatimecanwritetotheentiredatabase.

WaitTime:Thewaittimeistheelapsedtimeofthewrite.

Parameter Description

file# Thisidentifiesthecontrolfiletowhich
thesessioniscurrentlywriting

block# Blocknumberinthecontrolfilewhere
thewritebegins.Theblocksizeisthe
asthephysicalblocksizeoftheport
(usually512bytes,someUNIXports
have1or2Kilobytes).

blocks Thenumberofblocksthatthesession
istryingtowrite

OracleDatabaseReference11gRelease2(11.2)
PartNumberE2551302

http://docs.oracle.com/cd/E11882_01/server.112/e25513/waitevents003.htm#autoId19

ControlfileBackups

https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrlstate=15whalhnui_383&id=1493674.1 9/13
5/15/2015 Document1493674.1

RMANCONTROLFILEAUTOBACKUP

Wecanbackupthecontrolfilewhenthedatabaseismountedoropen.RMANusesasnapshotcontrolfiletoensurea
readconsistentversion.IftheCONFIGURECONTROLFILEAUTOBACKUPcommandissettoON(bydefaultitisOFF),
thenRMANautomaticallybacksupthecontrolfileandserverparameterfileaftereverybackupandafterdatabase
structuralchanges.

RMAN>configurecontrolfileautobackupon;

Ifthedatabaseisstartedwithaspfile,aCONTROLFILEAUTOBACKUPwillalsoincludethespfile.WhenCONTROLFILE
AUTOBACKUPisnotenabledthecontrolfileandspfile(ifthedatabasewasstartedwithanspfile)areincluded
automaticallywhendatafile1isbackedup.

RMAN>backupdatafile1;

Inthecaseofabackupofotherdatafiles,likedatafile2,thecontrolfilewillnotbeincluded.Thecontrolfileand
spfilecanbeexplicitlyspecifiedintheBACKUPclause.

RMAN>backupdatafile2currentcontrolfilespfile;

Tomakeamanualbackup,youcaneitherspecifyINCLUDECURRENTCONTROLFILEwhenbackingupotherfilesor
specifyBACKUPCURRENTCONTROLFILE.

RMAN>BACKUPDEVICETYPEsbtTABLESPACEusersINCLUDECURRENTCONTROLFILE;

RMAN>BACKUPASCOPYCURRENTCONTROLFILEFORMAT'/tmp/control01.ctl';

OracleDatabaseBackupandRecoveryUser'sGuide11gRelease2(11.2)
PartNumberE1064205

http://docs.oracle.com/cd/E11882_01/backup.112/e10642/rcmbckba.htm#i1009642

Note272408.1RMANBACKUPAUTOMATICALLYINCLUDESCONTROLFILEANDSPFILE

BACKUPCONTROLFILEClause

WecanusetheBACKUPCONTROLFILEclausetobackupthecurrentcontrolfile.Thedatabasemustbeopenor
mountedwhenyouspecifythisclause.

TO'filename'Usethisclausetospecifyabinarybackupofthecontrolfile.Youmustfullyspecifythefilenameusing
theconventionsforyouroperatingsystem.Ifthespecifiedfilealreadyexists,thenyoumustspecifyREUSE.Inan
OracleRACenvironment,filenamemustbeonsharedstorage.

AbinarybackupcontainsinformationthatisnotcapturedifyouspecifyTOTRACE,suchasthearchivedloghistory,
offlinerangeforreadonlyandofflinetablespaces,andbackupsetsandcopies(ifyouuseRMAN).IftheCOMPATIBLE
initializationparameteris10.2orhigher,binarycontrolfilebackupsincludetempfileentries.
https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrlstate=15whalhnui_383&id=1493674.1 10/13
5/15/2015 Document1493674.1

ALTERDATABASEBACKUPCONTROLFILETO'/oracle/backup/control.bkp';

TOTRACESpecifyTOTRACEifyouwantOracleDatabasetowriteSQLstatementstoatrace(text)fileratherthan
makingaphysicalbackupofthecontrolfile.Thetracefilesarestoredinasubdirectorydeterminedbythe
DIAGNOSTIC_DESTinitializationparameter.YoucanfindthenameandlocationofthetracefiletowhichtheCREATE
CONTROLFILEstatementswerewrittenbylookinginthealertlog.

YoucanuseSQLstatementswrittentothetracefiletostartupthedatabase,recreatethecontrolfile,andrecover
andopenthedatabaseappropriately,basedonthecreatedcontrolfile.IfyouissueanALTERDATABASEBACKUP
CONTROLFILETOTRACEstatementwhileblockchangetrackingisenabled,thentheresultingscriptwillcontaina
commandtoreenableblockchangetracking.

ALTERDATABASEBACKUPCONTROLFILETOTRACE;

OracleDatabaseSQLLanguageReference11gRelease2(11.2)
PartNumberE2608802

http://docs.oracle.com/cd/E11882_01/server.112/e26088/statements_1004.htm#i2078526

GuidelinesforControlfiles

ProvideFilenamesfortheControlFiles

YouspecifycontrolfilenamesusingtheCONTROL_FILESinitializationparameterinthedatabaseinitialization
parameterfile(see"CreatingInitialControlFiles").Theinstancerecognizesandopensallthelistedfilesduring
startup,andtheinstancewritestoandmaintainsalllistedcontrolfilesduringdatabaseoperation.

IncaseyoudonotspecifyfilesforCONTROL_FILESbeforedatabasecreation:

IfyouarenotusingOracleManagedFiles,thenthedatabasecreatesacontrolfileandusesadefaultfilename.
Thedefaultnameisoperatingsystemspecific.
IfyouareusingOracleManagedFiles,thentheinitializationparametersyousettoenablethatfeature
determinethenameandlocationofthecontrolfiles.
IfyouareusingOracleAutomaticStorageManagement(OracleASM),youcanplaceincompleteOracleASM
filenamesintheDB_CREATE_FILE_DESTandDB_RECOVERY_FILE_DESTinitializationparameters.OracleASM
thenautomaticallycreatescontrolfilesintheappropriateplaces.

MultiplexControlFilesonDifferentDisks

EveryOracleDatabaseshouldhaveatleasttwocontrolfiles,eachstoredonadifferentphysicaldisk.Ifacontrolfileis
damagedduetoadiskfailure,theassociatedinstancemustbeshutdown.Oncethediskdriveisrepaired,the
damagedcontrolfilecanberestoredusingtheintactcopyofthecontrolfilefromtheotherdiskandtheinstancecan
berestarted.Inthiscase,nomediarecoveryisrequired.

Thebehaviorofmultiplexedcontrolfilesisthis:

ThedatabasewritestoallfilenameslistedfortheinitializationparameterCONTROL_FILESinthedatabase
initializationparameterfile.
https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrlstate=15whalhnui_383&id=1493674.1 11/13
5/15/2015 Document1493674.1

ThedatabasereadsonlythefirstfilelistedintheCONTROL_FILESparameterduringdatabaseoperation.
Ifanyofthecontrolfilesbecomeunavailableduringdatabaseoperation,theinstancebecomesinoperableand
shouldbeaborted.

Onewaytomultiplexcontrolfilesistostoreacontrolfilecopyoneverydiskdrivethatstoresmembersofredolog
groups,iftheredologismultiplexed.Bystoringcontrolfilesintheselocations,youminimizetheriskthatallcontrol
filesandallgroupsoftheredologwillbelostinasinglediskfailure.

BackUpControlFiles

Itisveryimportantthatyoubackupyourcontrolfiles.Thisistrueinitially,andeverytimeyouchangethephysical
structureofyourdatabase.Suchstructuralchangesinclude:

Adding,dropping,orrenamingdatafiles
Addingordroppingatablespace,oralteringtheread/writestateofthetablespace
Addingordroppingredologfilesorgroups

OracleDatabaseAdministrator'sGuide11gRelease2(11.2)
PartNumberE2549402

http://docs.oracle.com/cd/E11882_01/server.112/e25494/control.htm#i1106212

DroppingControlfiles

Youwanttodropcontrolfilesfromthedatabase,forexample,ifthelocationofacontrolfileisnolongerappropriate.
Rememberthatthedatabaseshouldhaveatleasttwocontrolfilesatalltimes.

Shutdownthedatabase.
EdittheCONTROL_FILESparameterinthedatabaseinitializationparameterfiletodeletetheoldcontrolfile
name.
Restartthedatabase.

Note:
Thisoperationdoesnotphysicallydeletetheunwantedcontrolfilefromthedisk.Useoperatingsystemcommandsto
deletetheunnecessaryfileafteryouhavedroppedthecontrolfilefromthedatabase.

AdditionalResources

Note735106.1HowtoRecreateaControlfile
Note881082.1UnabletoRestoreControlfileFromRMANAutobackup
Note580414.1RMANHowtorestorethecontrolfileusingRMAN
Note345180.1HowtoduplicateacontrolfilewhenASMisinvolved
Note329981.110gR2NewFeature:EliminateControlFileReCreation
Note305565.1PersistentControlfileconfigurationsforRMANin9iand10g
Note1056057.1HOWTOMONITORCONTROLFILESECTIONEXPANSIONOVERTIME
Note1086496.1HOWDOCIRCULARCONTROLFILESECTIONSEXPAND?(LOGHISTORY/ARCHIVEDLOGETC)
Note470463.1HowToCatalogBackups/Archivelogs/DatafileCopies/ControlfileCopies
Note403883.1HowToRestoreControlfileFromABackupsetWithoutACatalogOrAutobackup
Note406191.1DiagnosingORA600[2103]IssuesinaNONRACenvironment


https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrlstate=15whalhnui_383&id=1493674.1 12/13
5/15/2015 Document1493674.1

KnownIssuesandResolutions

Note429943.1SummaryOfBugsOnORA00600[2103]Error
Note1084048.6ORA01503,ORA01161:onCreateControlfile
Note881082.1UnabletoRestoreControlfileFromRMANAutobackup
Note1072417.1PerformanceDegradationasaResultof'enq:CFcontention'
Note1058851.6EXCESSIVEI/OCONTROLFILEPERFORMANCEPROBLEMS
Note265599.1ORA600[2130]REPORTEDWithRMANRESTORECONTROLFILEVALIDATE
Note849071.110.2.0.3InstanceCrashWithORA600[2103]Error
Note28045.1ORA600[2103]"Timeouton'Controlfile'or'CheckpointProgress'Enqueue"
Note1308378.1AfterUpgradeTo11.2.0.2WeRecieveOra00245DuringAutobackupOfTheControlfile
Note10317487.8Bug10317487RMANcontrolfilebackupfailswithODMerrorORA17500orORA245
Note9145541.8Bug9145541OERI[25027]/OERI[4097]/OERI[4000]/ORA1555inpluggeddatafileafterCREATE
CONTROLFILEin11g
Note342696.1Rman20033:ControlFileSequence#TooLowRman20033
Note1265103.1RMANDUPLICATEfailswithORA600[KGEADE_IS_0]whilecreatingcontrolfile

Didn'tfindwhatyouarelookingfor?

https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrlstate=15whalhnui_383&id=1493674.1 13/13

You might also like