版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第7章數(shù)據(jù)庫(kù)實(shí)例本章內(nèi)容Oracle實(shí)例概述Oracle內(nèi)存結(jié)構(gòu)Oracle后臺(tái)進(jìn)程本章要求掌握Oracle實(shí)例基本概念掌握Oracle實(shí)例的內(nèi)存結(jié)構(gòu)、功能及管理了解Oracle進(jìn)程分類及其作用掌握Oracle后臺(tái)進(jìn)程、功能及管理7.1實(shí)例概述Oracle實(shí)例的概念Oracle數(shù)據(jù)庫(kù)主要由放在磁盤中的物理數(shù)據(jù)庫(kù)和對(duì)物理數(shù)據(jù)庫(kù)進(jìn)行管理的數(shù)據(jù)庫(kù)管理系統(tǒng)。其中數(shù)據(jù)庫(kù)管理系統(tǒng)是處于用戶與物理數(shù)據(jù)庫(kù)之間的一個(gè)中間層軟件,又稱為實(shí)例,由一系列內(nèi)存結(jié)構(gòu)和后臺(tái)進(jìn)程組成。在啟動(dòng)數(shù)據(jù)庫(kù)時(shí),Oracle首先在內(nèi)存中獲取一定的空間,啟動(dòng)各種用途的后臺(tái)進(jìn)程,即創(chuàng)建一個(gè)數(shù)據(jù)庫(kù)實(shí)例,然后由實(shí)例裝載數(shù)據(jù)文件和重做日志文件,最后打開數(shù)據(jù)庫(kù)。用戶操作數(shù)據(jù)庫(kù)的過(guò)程實(shí)質(zhì)上是與數(shù)據(jù)庫(kù)實(shí)例建立連接,然后通過(guò)實(shí)例來(lái)連接、操作數(shù)據(jù)庫(kù)的過(guò)程。數(shù)據(jù)庫(kù)與實(shí)例的關(guān)系單實(shí)例數(shù)據(jù)庫(kù)系統(tǒng)多實(shí)例數(shù)據(jù)庫(kù)系統(tǒng)實(shí)例組成內(nèi)存結(jié)構(gòu):系統(tǒng)全局區(qū)(SGA)和程序全局區(qū)(PGA)后臺(tái)進(jìn)程組成
處理數(shù)據(jù)的內(nèi)存結(jié)構(gòu)實(shí)例
后臺(tái)進(jìn)程
客戶應(yīng)用程序
服務(wù)器進(jìn)程
數(shù)據(jù)庫(kù)實(shí)例SGA日志緩存共享池?cái)?shù)據(jù)字典緩沖區(qū)庫(kù)緩沖區(qū)DBWRSMONPMONCKPTLGWROthers用戶進(jìn)程服務(wù)器進(jìn)程PGA控制文件數(shù)據(jù)文件歸檔日志文件參數(shù)文件口令文件重做日志文件數(shù)據(jù)庫(kù)數(shù)據(jù)庫(kù)緩存7.2Oracle內(nèi)存結(jié)構(gòu)系統(tǒng)全局區(qū)(SystemGlobalArea,SGA)程序全局區(qū)(ProgramGlobalArea,PGA)SGASGA是由Oracle分配的共享內(nèi)存結(jié)構(gòu),包含一個(gè)數(shù)據(jù)庫(kù)實(shí)例共享的數(shù)據(jù)和控制信息。當(dāng)多個(gè)用戶同時(shí)連接同一個(gè)實(shí)例時(shí),SGA數(shù)據(jù)可供多個(gè)用戶共享,SGA又稱為共享全局區(qū)(SharedGlobalArea)。用戶對(duì)數(shù)據(jù)庫(kù)的各種操作主要在SGA中進(jìn)行。該內(nèi)存區(qū)隨數(shù)據(jù)庫(kù)實(shí)例的創(chuàng)建而分配,隨實(shí)例的終止而釋放。PGAPGA是在用戶進(jìn)程連接數(shù)據(jù)庫(kù)、創(chuàng)建一個(gè)會(huì)話時(shí),由Oracle為用戶分配的內(nèi)存區(qū)域,保存當(dāng)前用戶私有的數(shù)據(jù)和控制信息,因此該區(qū)又稱為私有全局區(qū)(PrivateGlobalArea)。每個(gè)服務(wù)器進(jìn)程只能訪問(wèn)自己的PGA,所有服務(wù)器進(jìn)程的PGA總和即為實(shí)例的PGA的大小。7.2.1SGASGA包含含的的內(nèi)內(nèi)存存結(jié)結(jié)構(gòu)構(gòu)有有::數(shù)據(jù)據(jù)高高速速緩緩沖沖區(qū)區(qū)((DatabaseBufferCache)共享池(SharedPool)重做日志緩沖沖區(qū)(RedoLogCache)大型池(LargePool)Java池(JavaPool)流池(StreamsPool)其他結(jié)構(gòu)(如如固定SGA、鎖管理等))(1)數(shù)據(jù)高速緩緩沖區(qū)功能存儲(chǔ)從數(shù)據(jù)文文件中檢索出出來(lái)的數(shù)據(jù)拷拷貝。應(yīng)用程程序要訪問(wèn)的的數(shù)據(jù)必須從從磁盤的數(shù)據(jù)據(jù)文件讀到數(shù)數(shù)據(jù)緩沖區(qū)中中處理。在數(shù)據(jù)緩沖區(qū)區(qū)中被修改后后的數(shù)據(jù)由數(shù)數(shù)據(jù)寫入進(jìn)程程寫到硬盤的的數(shù)據(jù)文件中中永久保存。。提高獲取和更更新數(shù)據(jù)的性性能。數(shù)據(jù)高速緩沖沖區(qū)的工作過(guò)過(guò)程緩沖塊的類型型臟緩存塊(DirtyBuffers)臟緩存塊中保保存的是已經(jīng)經(jīng)被修改過(guò)的的數(shù)據(jù)。當(dāng)一一條SQL語(yǔ)句對(duì)某個(gè)緩緩存塊中的數(shù)數(shù)據(jù)進(jìn)行修改改后,這個(gè)緩緩存塊就被標(biāo)標(biāo)記為臟緩存存塊。它們最最終將由DBWR進(jìn)程寫入數(shù)據(jù)據(jù)文件,以永永久性地保存存修改結(jié)空閑緩存塊((FreeBuffers)空閑緩存塊中中不包含任何何數(shù)據(jù),它們們等待后臺(tái)進(jìn)進(jìn)程或服務(wù)器器進(jìn)程向其中中寫入數(shù)據(jù)。。當(dāng)Oracle從數(shù)據(jù)文件中中讀取數(shù)據(jù)時(shí)時(shí),將會(huì)尋找找空閑緩存塊塊,以便將數(shù)數(shù)據(jù)寫入其中中命中緩存塊((PinnedBuffers)正被使用,或或者被顯式地地聲明為保留留的緩存塊。。這些緩存塊塊始終保留在在數(shù)據(jù)高速緩緩沖區(qū)中,不不會(huì)被換出內(nèi)內(nèi)存。緩存塊的管理理臟緩存塊列表表:包含那些些已經(jīng)被修改改但還沒(méi)有寫寫入數(shù)據(jù)文件件的臟緩存塊塊。LRU列表(LeastRecentlyUsed):包含所有有的空閑緩存存塊、命中緩緩存塊和那些些還沒(méi)有來(lái)得得及移入到臟臟緩存塊列表表中的臟緩存存塊。在該列列表中,最近近被訪問(wèn)的緩緩存塊被移動(dòng)動(dòng)到列表的頭頭部,而其他他緩存塊向列列表尾部移動(dòng)動(dòng),最近最少少被訪問(wèn)的緩緩存塊最先被被移出LRU列表,從而保保證最頻繁使使用的緩存塊塊始終保存在在內(nèi)存中。數(shù)據(jù)高速緩沖沖區(qū)大小數(shù)據(jù)高速緩沖沖區(qū)越大,用用戶需要的數(shù)數(shù)據(jù)在內(nèi)存中中的可能性就就越大,即緩緩存命中率越越高,從而減減少了Oracle訪問(wèn)硬盤數(shù)據(jù)據(jù)的次數(shù),提提高了數(shù)據(jù)庫(kù)庫(kù)系統(tǒng)執(zhí)行的的效率。然而而,如果數(shù)據(jù)據(jù)高速緩沖區(qū)區(qū)的值太大,,Oracle就不得不在內(nèi)內(nèi)存中尋找更更多的塊來(lái)定定位所需要的的數(shù)據(jù),反而而降低了系統(tǒng)統(tǒng)性能。顯然然需要確定一一個(gè)合理的數(shù)數(shù)據(jù)高速緩沖沖區(qū)大小。DB_CACHE_SIZE(標(biāo)準(zhǔn)塊)(2)重做日志緩緩沖區(qū)功能重做日志緩沖沖區(qū)用于緩存存用戶對(duì)數(shù)據(jù)據(jù)庫(kù)進(jìn)行修改改操作時(shí)生成成的重做記錄錄。為了提高工作作效率,重做做記錄并不是是直接寫入重重做日志文件件中,而是首首先被服務(wù)器器進(jìn)程寫入重重做日志緩沖沖區(qū)中,在一一定條件下,,再由日志寫寫入進(jìn)程(LGWR)把重做日志志緩沖區(qū)的內(nèi)內(nèi)容寫入重做做日志文件中中做永久性保保存。在歸檔檔模式下,當(dāng)當(dāng)重做日志切切換時(shí),由歸歸檔進(jìn)程(ARCH)將重做日志志文件的內(nèi)容容寫入歸檔文文件中重做日志緩沖沖區(qū)的工作過(guò)過(guò)程重做日志緩沖沖區(qū)的大小LOG_BUFFER較大的重做日日志緩沖區(qū),,可以減少對(duì)對(duì)重做日志文文件寫的次數(shù)數(shù),適合長(zhǎng)時(shí)時(shí)間運(yùn)行的、、產(chǎn)生大量重重做記錄的事事務(wù)。(3)共享池池功能共享池用于緩緩存最近執(zhí)行行過(guò)的SQL語(yǔ)句、PL/SQL程序和數(shù)據(jù)字字典信息,是是對(duì)SQL語(yǔ)句、PL/SQL程序進(jìn)行語(yǔ)法法分析、編譯譯、執(zhí)行的區(qū)區(qū)域。組成庫(kù)緩存庫(kù)緩存用于緩緩存已經(jīng)解釋釋并執(zhí)行過(guò)包括SQL工作區(qū)和PL/SQL工作區(qū)數(shù)據(jù)字典緩存區(qū)數(shù)據(jù)字典緩存區(qū)保存最常用的數(shù)據(jù)字典信息共享池大小SHARED_POOL_SIZE合適的共享池池大小,可使使編譯過(guò)的程程序代碼長(zhǎng)駐駐內(nèi)存,大大大降低重復(fù)執(zhí)執(zhí)行相同的SQL語(yǔ)句、PL/SQL程序的系統(tǒng)開開銷,從而提提高數(shù)據(jù)庫(kù)的的性能。(4)大型池池功能大型池是一個(gè)個(gè)可選的內(nèi)存存配置項(xiàng),主主要為Oracle多線程服務(wù)器器、服務(wù)器I/O進(jìn)程、數(shù)據(jù)庫(kù)庫(kù)備份與恢復(fù)復(fù)操作、執(zhí)行行具有大量排排序操作的SQL語(yǔ)句、執(zhí)行并并行化的數(shù)據(jù)據(jù)庫(kù)操作等需需要大量緩存存的操作提供供內(nèi)存空間。。如果沒(méi)有在在SGA區(qū)中創(chuàng)建大型型池,上述操操作所需要的的緩存空間將將在共享池或或PGA中分配,因而而影響共享池池或PGA的使用效率。。大型池大小LARGE_POOL_SIZE(5)Java池功能Java提供對(duì)Java程序設(shè)計(jì)的支支持,用于存存儲(chǔ)Java代碼、Java語(yǔ)句的語(yǔ)法分分析表、Java語(yǔ)句的執(zhí)行方方案和進(jìn)行Java程序開發(fā)。Java池大小JAVA_POOL_SIZE通常不小于20M,以便安裝Java虛擬機(jī)(6)流池功能流池是一個(gè)可可選的內(nèi)存配配置項(xiàng),用于于對(duì)流的支持持。流池大小STREAMS_POOL_SIZE7.2.2SGA的管理SGA組件大小調(diào)整整DB_CACHE_SIZELOG_BUFFERSHARED_POOL_SIZELARGE_POOL_SIZEJava_POOL_SIZESTRAMS_POOL_SIZESGA_MAX_SIZE注意除了SGA_MAX_SIZE不能修改外,,其他幾個(gè)參參數(shù)可以使用用ALTERSYSTEM語(yǔ)句進(jìn)行動(dòng)態(tài)態(tài)調(diào)整。SGA自動(dòng)管理在Oracle10g中,通過(guò)設(shè)置置初始化參數(shù)數(shù)SGA_TARGET,可以實(shí)現(xiàn)對(duì)對(duì)SGA中的數(shù)據(jù)高速速緩沖區(qū)、共共享池、大型型池、Java池和流池的自自動(dòng)管理,即即這幾個(gè)組件件的內(nèi)存調(diào)整整不需要DBA來(lái)干預(yù),系統(tǒng)統(tǒng)自動(dòng)進(jìn)行調(diào)調(diào)整。但是對(duì)對(duì)于日志緩沖沖區(qū)、非標(biāo)準(zhǔn)準(zhǔn)塊的數(shù)據(jù)高高速緩沖區(qū)、、保留池、回回收池等其他他區(qū)域的調(diào)整整還需要DBA使用ALTERSYSTEM語(yǔ)句手動(dòng)進(jìn)行行調(diào)整。設(shè)置SGA自動(dòng)管理的方方法計(jì)算參數(shù)SGA_TARGET的大小SELECT((SELECTSUM(value)FROMV$SGA)-(SELECTCURRENT_SIZEFROMV$SGA_DYNAMIC_FREE_MEMORY))/1024/1024||'MB'"SGA_TARGET"FROMDUAL;設(shè)置參參數(shù)SGA_TARGET通過(guò)ALTERSYSTEM語(yǔ)句設(shè)設(shè)置參參數(shù)SGA_TARGET的值,,該值值可以以是((1)中計(jì)計(jì)算出出來(lái)的的結(jié)果果,也也可以以是當(dāng)當(dāng)前SGA大小與與SGA_MAX_SIZE之間的的某個(gè)個(gè)值。。例如如將SGA中與自自動(dòng)管管理相相關(guān)的的組件件大小小設(shè)置置為0ALTERSYSTEMSETSHARED_POOL_SIZE=0;SQL>ALTERSYSTEMSETLARGE_POOL_SIZE=0;SQL>ALTERSYSTEMSETJava_POOL_SIZE=0;SQL>ALTERSYSTEMSETLARGE_POOL_SIZE=0;SQL>ALTERSYSTEMSETSTREAMS_POOL_SIZE=0;如果要要取消消自動(dòng)動(dòng)管理理,只只需將將參數(shù)數(shù)SGA_TARGET設(shè)置為為0即可。。7.2.3PGA功能PGA是為每每一個(gè)個(gè)與Oracle數(shù)據(jù)庫(kù)庫(kù)連接接的用用戶保保留的的內(nèi)存存區(qū),,主要要存儲(chǔ)儲(chǔ)該連連接使使用的的變量量信息息和與與用戶戶進(jìn)程程交換換的信信息。。是非非共享享的,,只有有服務(wù)務(wù)進(jìn)程程本身身才能能訪問(wèn)問(wèn)它自自己的的PGA區(qū)組成由排序序區(qū)、、會(huì)話話區(qū)、、游標(biāo)標(biāo)區(qū)以以及堆堆棧區(qū)區(qū)組成成排序區(qū)區(qū)主要要用于于存放放排序序操作作所產(chǎn)產(chǎn)生的的臨時(shí)時(shí)數(shù)據(jù)據(jù),其其大小小由初初始化化參數(shù)數(shù)SORT_AREA_SIZE定義;;會(huì)話話區(qū)用用于保保存用用戶會(huì)會(huì)話所所具有有的權(quán)權(quán)限、、角色色、性性能統(tǒng)統(tǒng)計(jì)信信息;;游標(biāo)標(biāo)區(qū)用用于存存放執(zhí)執(zhí)行游游標(biāo)操操作時(shí)時(shí)所產(chǎn)產(chǎn)生的的數(shù)據(jù)據(jù);堆堆棧區(qū)區(qū)用于于保存存會(huì)話話過(guò)程程中的的綁定定變量量、會(huì)會(huì)話變變量等等信息息。UserprocessStackspaceSessioninformationsortarea,cursorinformationSGASharedSQLareasSGASessioninformationPGADedicatedserverSharedserverServerprocessSharedSQLareasStackspacesortarea,cursorinformation7.2.4在OEM中管理理數(shù)據(jù)據(jù)庫(kù)實(shí)實(shí)例的的內(nèi)存存結(jié)構(gòu)構(gòu)7.3Oracle后臺(tái)進(jìn)進(jìn)程Oracle進(jìn)程概概述Oracle后臺(tái)進(jìn)進(jìn)程7.3.1Oracle進(jìn)程概概述進(jìn)程的的概念念進(jìn)程是是操作作系統(tǒng)統(tǒng)中一一個(gè)獨(dú)獨(dú)立的的可以以調(diào)度度的活活動(dòng),,用于于完成成指定定的任任務(wù)。。進(jìn)程程與程程序的的區(qū)別別在于于:進(jìn)程是是動(dòng)態(tài)態(tài)的概概念,,即動(dòng)動(dòng)態(tài)創(chuàng)創(chuàng)建,,完成成任務(wù)務(wù)后立立即消消亡;;而程程序是是一個(gè)個(gè)靜態(tài)態(tài)實(shí)體體。進(jìn)程強(qiáng)強(qiáng)調(diào)執(zhí)執(zhí)行過(guò)過(guò)程,,而程程序僅僅僅是是指令令的有有序集集合。。進(jìn)程的的類型型用戶進(jìn)進(jìn)程服務(wù)器器進(jìn)程程后臺(tái)進(jìn)進(jìn)程用戶進(jìn)進(jìn)程當(dāng)用戶戶連接接數(shù)據(jù)據(jù)庫(kù)執(zhí)執(zhí)行一一個(gè)應(yīng)應(yīng)用程程序時(shí)時(shí),會(huì)會(huì)創(chuàng)建建一個(gè)個(gè)用戶戶進(jìn)程程,來(lái)來(lái)完成成用戶戶所指指定的的任務(wù)務(wù)。服務(wù)器器進(jìn)程程服務(wù)器器進(jìn)程程由Oracle自身創(chuàng)創(chuàng)建,,用于于處理理連接接到數(shù)數(shù)據(jù)庫(kù)庫(kù)實(shí)例例的用用戶進(jìn)進(jìn)程所所提出出的請(qǐng)請(qǐng)求。。用戶戶進(jìn)程程只有有通過(guò)過(guò)服務(wù)務(wù)器進(jìn)進(jìn)程才才能實(shí)實(shí)現(xiàn)對(duì)對(duì)數(shù)據(jù)據(jù)庫(kù)的的訪問(wèn)問(wèn)和操操作。。服務(wù)器器進(jìn)程程分為為專用用服務(wù)務(wù)器進(jìn)進(jìn)程和和共享享服務(wù)務(wù)器進(jìn)進(jìn)程兩兩種。。服務(wù)器器進(jìn)程程主要要完成成以下下任務(wù)務(wù):解析并并執(zhí)行行用戶戶提交交的SQL語(yǔ)句和和PL/SQL程序;;在SGA的數(shù)據(jù)據(jù)高速速緩沖沖區(qū)中中搜索索用戶戶進(jìn)程程所要要訪問(wèn)問(wèn)的數(shù)數(shù)據(jù),,如果果數(shù)據(jù)據(jù)不在在緩沖沖區(qū)中中,則則需要要從硬硬盤數(shù)數(shù)據(jù)文文件中中讀取取所需需的數(shù)數(shù)據(jù),,再將將它們們復(fù)制制到緩緩沖區(qū)區(qū)中;;將用戶戶改變變數(shù)據(jù)據(jù)庫(kù)的的操作作信息息寫入入日志志緩沖沖區(qū)中中。將查詢?cè)兓驁?zhí)執(zhí)行后后的結(jié)結(jié)果數(shù)數(shù)據(jù)返返回給給用戶戶進(jìn)程程。后臺(tái)進(jìn)進(jìn)程后臺(tái)進(jìn)進(jìn)程作作用為了保證證Oracle數(shù)據(jù)庫(kù)在在任意一一個(gè)時(shí)刻刻可以處處理多用用戶的并并發(fā)請(qǐng)求求,進(jìn)行行復(fù)雜的的數(shù)據(jù)操操作,而而且還要要優(yōu)化系系統(tǒng)性能能,Oracle數(shù)據(jù)庫(kù)起起用了一一些相互互獨(dú)立的的附加進(jìn)進(jìn)程,稱稱為后臺(tái)臺(tái)進(jìn)程。。服務(wù)器器進(jìn)程在在執(zhí)行用用戶進(jìn)程程請(qǐng)求時(shí)時(shí),調(diào)用用后臺(tái)進(jìn)進(jìn)程來(lái)實(shí)實(shí)現(xiàn)對(duì)數(shù)數(shù)據(jù)庫(kù)的的操作。。后臺(tái)進(jìn)程程主要完完成以下下任務(wù)::在內(nèi)存與與磁盤之之間進(jìn)行行I/O操作;監(jiān)視各個(gè)個(gè)服務(wù)器器進(jìn)程狀狀態(tài);協(xié)調(diào)各個(gè)個(gè)服務(wù)器器進(jìn)程的的任務(wù);;維護(hù)系統(tǒng)統(tǒng)性能和和可靠性性等。7.3.2Oracle后臺(tái)進(jìn)程程DBWR數(shù)據(jù)庫(kù)寫寫入進(jìn)程程LGWR日志寫入入進(jìn)程CKPT檢查點(diǎn)進(jìn)進(jìn)程SMON系統(tǒng)監(jiān)控控進(jìn)程PMON進(jìn)程監(jiān)控控進(jìn)程ARCH歸檔進(jìn)程程RECO恢復(fù)進(jìn)程程LCKn封鎖進(jìn)程程Dnnn調(diào)度進(jìn)程程Snnn共享服務(wù)務(wù)器進(jìn)程程(1)DBWR(數(shù)據(jù)庫(kù)寫寫入進(jìn)程程)功能:數(shù)據(jù)庫(kù)寫寫入進(jìn)程程負(fù)責(zé)把把數(shù)據(jù)高高速緩沖沖區(qū)中已已經(jīng)被修修改過(guò)的的數(shù)據(jù)((“臟”緩存塊))成批寫寫入數(shù)據(jù)據(jù)文件中中永久保保存,同同時(shí)使數(shù)數(shù)據(jù)高速速緩沖區(qū)區(qū)有更多多的空閑閑緩存塊塊,保證證服務(wù)器器進(jìn)程將將所需要要的數(shù)據(jù)據(jù)從數(shù)據(jù)據(jù)文件讀讀取到數(shù)數(shù)據(jù)高速速緩沖區(qū)區(qū)中,提提高緩存存命中率率。InstanceSGADatabaseBuffer
CacheDBWnControlfilesDatafilesRedologfilesDatabase啟動(dòng)DBWR進(jìn)程執(zhí)行INSERT、UPDATE等操作時(shí)時(shí),沒(méi)沒(méi)有足夠夠的空閑閑塊當(dāng)檢查點(diǎn)點(diǎn)發(fā)生時(shí)時(shí),將啟啟動(dòng)DBWR進(jìn)程當(dāng)數(shù)據(jù)緩緩存的LRU列表的長(zhǎng)長(zhǎng)度達(dá)到到初始化化DB_BLOCK_WRITE_BATCH指定值的的一半時(shí)時(shí)若發(fā)生超超時(shí)(大大約3秒未被啟啟動(dòng))LGWR(日志寫寫入進(jìn)程程)功能日志寫入入進(jìn)程負(fù)負(fù)責(zé)把重重做日志志緩沖區(qū)區(qū)的數(shù)據(jù)據(jù)寫入重重做日志志文件中中永久保保存。數(shù)據(jù)寫入入進(jìn)程在在工作之之前,需需要了解解日志寫寫入進(jìn)程程是否已已經(jīng)把相相關(guān)的日日志緩沖沖區(qū)中記記載的數(shù)數(shù)據(jù)寫入入硬盤中中,如果果相關(guān)的的日志緩緩沖區(qū)中中的記錄錄還沒(méi)有有被寫入入,DBWR會(huì)通知LGWR完成相應(yīng)應(yīng)的工作作,然后后DBWR才開始寫寫入。InstanceSGADBWnRedoLogBufferControlfilesDatafilesRedologfilesLGWRDatabase啟動(dòng)LGWR進(jìn)程用戶通過(guò)過(guò)COMMIT語(yǔ)句提交交當(dāng)前事事務(wù)重做日志志緩存被被寫滿三三分之一一DBWR進(jìn)程開始始將臟緩緩存塊寫寫入數(shù)據(jù)據(jù)文件每隔3秒,即發(fā)發(fā)生一次次超時(shí),,將啟動(dòng)動(dòng)LGWR事務(wù)提交交機(jī)制快速提交交組提交CKPT(檢查點(diǎn)點(diǎn)進(jìn)程))檢查點(diǎn)概概念檢查點(diǎn)是是一個(gè)事事件,當(dāng)當(dāng)該事件件發(fā)生時(shí)時(shí)(每隔隔一段時(shí)時(shí)間發(fā)生生),DBWR進(jìn)程把數(shù)數(shù)據(jù)高速速緩沖區(qū)區(qū)中臟緩緩存塊寫寫入數(shù)據(jù)據(jù)文件中中,同時(shí)時(shí)Oracle將對(duì)數(shù)據(jù)據(jù)庫(kù)控制制文件和和數(shù)據(jù)文文件的頭頭部的同同步序號(hào)號(hào)進(jìn)行更更新,以以記錄下下當(dāng)前的的數(shù)據(jù)庫(kù)庫(kù)結(jié)構(gòu)和和狀態(tài),,保證數(shù)數(shù)據(jù)的同同步。InstanceSGADWW0RedoLogBufferLGWRInstanceSGADBWnLGWRCKPTControlfilesDatafilesRedologfilesCKPT進(jìn)程的作作用更新控制制文件與與數(shù)據(jù)文文件的頭頭部,使使其同步步觸發(fā)DBWR進(jìn)程,將將臟緩存存塊寫入入數(shù)據(jù)文文件檢查點(diǎn)的的級(jí)別數(shù)據(jù)庫(kù)檢檢查點(diǎn)::每一次次日志切切換時(shí),,執(zhí)行一一個(gè)數(shù)據(jù)據(jù)庫(kù)檢查查點(diǎn),DBWR進(jìn)程將數(shù)數(shù)據(jù)高速速緩沖區(qū)區(qū)中的臟臟緩存塊塊寫入數(shù)數(shù)據(jù)文件件中;表空間檢檢查點(diǎn)::當(dāng)一個(gè)個(gè)表空間間設(shè)置為為脫機(jī)狀狀態(tài)時(shí),,執(zhí)行一一個(gè)表空空間檢查查點(diǎn),DBWR進(jìn)程把數(shù)數(shù)據(jù)高速速緩存中中與該表表空間相相關(guān)的臟臟緩存塊塊寫入數(shù)數(shù)據(jù)文件件中。時(shí)間檢查查點(diǎn):可可以設(shè)置置以時(shí)間間為基礎(chǔ)礎(chǔ)的檢查查點(diǎn),每每隔一段段時(shí)間執(zhí)執(zhí)行一次次檢查點(diǎn)點(diǎn)。需要要為檢查查點(diǎn)設(shè)置置一個(gè)合合適的執(zhí)執(zhí)行間隔隔,間隔隔太短,,將會(huì)產(chǎn)產(chǎn)生過(guò)多多的硬盤盤I/O操作;間間隔太長(zhǎng)長(zhǎng),數(shù)據(jù)據(jù)庫(kù)的恢恢復(fù)將耗耗費(fèi)太多多時(shí)間。。檢查點(diǎn)事事件的觸觸發(fā)每一個(gè)日日志切換換時(shí)當(dāng)實(shí)例以以如下方方式關(guān)閉閉時(shí)NORMAL,TRANSACTION,IMMEDIATE當(dāng)使用ALTERTABLESPACE[OFFLINENORMAL|READONLY|BEGINBACKUP],作用于于某個(gè)數(shù)數(shù)據(jù)文件件上的檢檢查點(diǎn)發(fā)發(fā)生時(shí).設(shè)置以時(shí)時(shí)間為基基礎(chǔ)的檢檢查點(diǎn)事事件當(dāng)數(shù)據(jù)庫(kù)庫(kù)管理員員需要手手工操作作時(shí)ALTERSYSTEMCHECKPOINT與檢查點(diǎn)點(diǎn)的相關(guān)關(guān)初始化化參數(shù)LOG_CHECKPOINT_INTERVAL用來(lái)指定定重做日日志文件件每寫多多少操作作系統(tǒng)塊塊發(fā)生一一次檢查查點(diǎn)事件件例如重做做日志文文件1M,系統(tǒng)操操作塊為為1K:設(shè)置此此參數(shù)為為500,則重做做日志文文件寫入入500K時(shí),檢查查點(diǎn)事件件發(fā)生LOG_CHECKPOINT_TIMEOUT用來(lái)指定定每隔多多長(zhǎng)時(shí)間間發(fā)生一一次檢查查點(diǎn)如1800,表示每每隔1800秒,如果果為0,表示此此參數(shù)無(wú)無(wú)效ELOG_CHECKPOINT_TO_ALERT用于于設(shè)設(shè)置置是是否否將將檢檢查查點(diǎn)點(diǎn)信信息息記記錄錄到到警警告告日日志志中中數(shù)數(shù)SMON(系系統(tǒng)統(tǒng)監(jiān)監(jiān)控控進(jìn)進(jìn)程程))功能能在實(shí)實(shí)例例啟啟動(dòng)動(dòng)時(shí)時(shí)負(fù)負(fù)責(zé)責(zé)對(duì)對(duì)數(shù)數(shù)據(jù)據(jù)庫(kù)庫(kù)進(jìn)進(jìn)行行恢恢復(fù)復(fù);;回收收不不再再使使用用的的臨臨時(shí)時(shí)空空間間。。將各各個(gè)個(gè)表表空空間間的的空空閑閑碎碎片片合合并并((表表空空間間的的存存儲(chǔ)儲(chǔ)參參數(shù)數(shù)PCTINCREASE不為為0時(shí)))。。InstanceSGASMONControlfilesDatafilesRedologfilesInstanceSGASMONDatabasePMON(進(jìn)進(jìn)程程監(jiān)監(jiān)控控進(jìn)進(jìn)程程))功能能負(fù)責(zé)責(zé)恢恢復(fù)復(fù)失失敗敗的的用用戶戶進(jìn)進(jìn)程程或或服服務(wù)務(wù)器器進(jìn)進(jìn)程程,,并并且且釋釋放放進(jìn)進(jìn)程程所所占占用用的的資資源源;;清除除非非正正常常中中斷斷的的用用戶戶進(jìn)進(jìn)程程留留下下的的孤孤兒兒會(huì)會(huì)話話,,回回退退未未提提交交的的事事務(wù)務(wù),,釋釋放放會(huì)會(huì)話話所所占占用用的的鎖鎖、、SGA、PGA等資資源源;;監(jiān)控控調(diào)調(diào)度度進(jìn)進(jìn)程程和和服服務(wù)務(wù)器器進(jìn)進(jìn)程程的的狀狀態(tài)態(tài),,如如果果它它們們失失敗敗,,則則嘗嘗試試重重新新啟啟動(dòng)動(dòng)它它們們,,并并釋釋放放它它們們所所占占用用的的各各種種資資源源。。InstanceSGAPMONPGAareaARCH(歸歸檔檔進(jìn)進(jìn)程程))功能能歸檔檔進(jìn)進(jìn)程程負(fù)負(fù)責(zé)責(zé)在在日日志志切切換換后后將將已已經(jīng)經(jīng)寫寫滿滿的的重重做做日日志志文文件件復(fù)復(fù)制制到到歸歸檔檔目目標(biāo)標(biāo)中中,,防防止止寫寫滿滿的的重重做做日日志志文文件件被被覆覆蓋蓋最多多可可啟啟動(dòng)動(dòng)10個(gè)歸歸檔檔進(jìn)進(jìn)程程((ARC0-ARC9)RECO(恢恢復(fù)復(fù)進(jìn)進(jìn)程程))功能能RECO進(jìn)程程負(fù)負(fù)責(zé)責(zé)在在分分布布式式數(shù)數(shù)據(jù)據(jù)庫(kù)庫(kù)環(huán)環(huán)境境中中自自動(dòng)動(dòng)解解決決分分布布式式事事務(wù)務(wù)的的故故障障。。一一個(gè)個(gè)節(jié)節(jié)點(diǎn)點(diǎn)的的RECO自動(dòng)動(dòng)解解決決所所有有的的懸懸而而未未決決的的事事務(wù)務(wù)。。當(dāng)當(dāng)一一個(gè)個(gè)數(shù)數(shù)據(jù)據(jù)庫(kù)庫(kù)服服務(wù)務(wù)器器的的RECO后臺(tái)臺(tái)進(jìn)進(jìn)程程試試圖圖建建立立同同一一遠(yuǎn)遠(yuǎn)程程服服務(wù)務(wù)器器的的通通信信,,如如果果該該遠(yuǎn)遠(yuǎn)程程服服務(wù)務(wù)器器不不可可用用或或者者網(wǎng)網(wǎng)絡(luò)絡(luò)連連接接不不能能建建立
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 房地產(chǎn)市場(chǎng)報(bào)告 -2024年四季度青島寫字樓和零售市場(chǎng)報(bào)告
- 2025廣告公司采購(gòu)合同
- 2025食品代理合同樣本
- 二零二五年度數(shù)字貨幣內(nèi)部股東股權(quán)轉(zhuǎn)讓合同模板3篇
- 二零二五年度農(nóng)業(yè)機(jī)械設(shè)備租賃與農(nóng)產(chǎn)品加工服務(wù)合同3篇
- 2025年度鄉(xiāng)村振興戰(zhàn)略下全新貧困戶幫扶合作協(xié)議3篇
- 二零二五年度車輛維修版服務(wù)合同3篇
- 二零二五年度全新私人合同:私人健身俱樂(lè)部及健身器材租賃服務(wù)協(xié)議2篇
- 二零二五年度企業(yè)個(gè)人業(yè)績(jī)目標(biāo)對(duì)賭協(xié)議3篇
- 2025年度環(huán)??萍己匣锶斯蓹?quán)分配與綠色發(fā)展合同3篇
- 醫(yī)學(xué)統(tǒng)計(jì)學(xué)全套課件
- 學(xué)校精準(zhǔn)扶貧工作計(jì)劃
- 工業(yè)產(chǎn)品質(zhì)量安全風(fēng)險(xiǎn)管控清單
- 【幼兒生活環(huán)節(jié)中數(shù)學(xué)思維能力培養(yǎng)研究5500字(論文)】
- 德欽縣云嶺鄉(xiāng)尼農(nóng)飲用水生產(chǎn)建設(shè)項(xiàng)目環(huán)評(píng)報(bào)告
- 《中醫(yī)婦科學(xué)》教材
- 護(hù)理評(píng)估量表及注意事項(xiàng)
- 提升極端天氣背景下的城市政府韌性治理能力
- 服務(wù)營(yíng)銷學(xué)教案
- 護(hù)理查房 小兒支氣管肺炎
- 相關(guān)方安全管理培訓(xùn)
評(píng)論
0/150
提交評(píng)論