1 簡述
本文為使讀者了解Oracle9i數據庫啟動過程,從alert.log文件入手,詳細分析了database從close到nomount、到mount、最後到open的過程。
2 環境描述
硬件環境:IBM XSERIES 3650
操作系統:Windows2003標准版+Sp02
數據庫版本:Oracle9.2.0.1
3 Alert文件詳解
3.1 數據庫啟動到nomount狀態下(實例啟動,startup nomount)
首先Oracle先查找參數文件(靜態或動態參數文件),搜索順序為spfile.ora->spfile.ora->init.ora。如還是無法找到參數文件,則無法啟動數據庫。
其次根據參數文件內容,進行實例創建、內存分配。
最後啟動後台進程。
SatSep1318:09:062008
StartingORACLEinstance(normal)
LICENSE_MAX_SESSION=0
LICENSE_SESSIONS_WARNING=0
SCNscheme2
Usinglog_archive_destparameterdefaultvalue
LICENSE_MAX_USERS=0
SYSauditingisdisabled
StartingupORACLERDBMSVersion:9.2.0.1.0.
Systemparameterswithnon-defaultvalues:——此處打印出參數文件內容
processes=150
timed_statistics=TRUE
shared_pool_size=50331648
large_pool_size=8388608
java_pool_size=33554432
control_files=D:oracleoradataoratestcontrol01.ctl,D:oracleoradataoratestcontrol02.ctl,D:oracleoradataoratestcontrol03.ctl
db_block_size=8192
db_cache_size=25165824
compatible=9.2.0.0.0
db_file_multiblock_read_count=16
fast_start_mttr_target=300
undo_management=AUTO
undo_tablespace=UNDOTBS1
……(此處省略部分參數)
star_transformation_enabled=FALSE
query_rewrite_enabled=FALSE
pga_aggregate_target=25165824
aq_tm_processes=1
PMONstartedwithpid=2——此處啟動後台進程
DBW0startedwithpid=3
LGWRstartedwithpid=4
……(此處省略部分參數)
CJQ0startedwithpid=8
QMN0startedwithpid=9
SatSep1318:09:092008
startingup1sharedserver(s)...
startingup1dispatcher(s)fornetworkaddress'(ADDRESS=(PARTIAL=YES)(PROTOCOL=TCP))'...
3.2 啟動數據庫到mount狀態(控制文件打開,alter database mount)
從剛才的參數文件中獲取控制文件位置,並打開。
SatSep1318:09:292008
alterdatabasemount
SatSep1318:09:332008
Successfulmountofredothread1,withmountid467611545.——記錄mountid
SatSep1318:09:332008
DatabasemountedinExclusiveMode.
Completed:alterdatabasemount——mount成功
3.3 啟動數據庫到open狀態(實例中控制文件描述的所有文件打開,alter database open)
打開控制文件中記錄的數據文件、日志文件等,並進行檢查點和完整性檢查。如一切OK,即對外提供數據庫服務。
SatSep1318:09:402008
alterdatabaseopen
SatSep1318:09:402008
Thread1openedatlogsequence61
Currentlog#1seq#61mem#0:D:ORACLEORADATAORATESTREDO01.LOG
Successfulopenofredothread1.
SatSep1318:09:402008
SMON:enablingcacherecovery
SatSep1318:09:402008
UndoSegment1Onlined
UndoSegment2Onlined
……(此處省略部分參數)
SuccessfullyonlinedUndoTablespace1.——在線undo表空間
SatSep1318:09:402008
SMON:enablingtxrecovery
SatSep1318:09:412008
DatabaseCharactersetisZHS16GBK——打印出此數據庫字符集
replication_dependency_trackingturnedoff(noasyncmultimasterreplicationfound)
Completed:alterdatabaseopen——打開數據庫成功