版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第2章Oracle數(shù)據(jù)庫(kù)的體系結(jié)構(gòu)2.1Oracle數(shù)據(jù)庫(kù)的物理存儲(chǔ)結(jié)構(gòu)Oracle數(shù)據(jù)庫(kù)的物理存儲(chǔ)結(jié)構(gòu)由存儲(chǔ)在磁盤中的操作系統(tǒng)文件組成。包括構(gòu)成數(shù)據(jù)庫(kù)的各種物理文件,包括數(shù)據(jù)文件,控制文件,重演日志文件,歸檔重演日志文件,參數(shù)文件,警告、跟蹤日志文件和備份文件等。Oracle數(shù)據(jù)庫(kù)存儲(chǔ)結(jié)構(gòu)
物理存儲(chǔ)結(jié)構(gòu)數(shù)據(jù)文件(DataFile)重做日志文件(RedoLogFile)控制文件(ControlFile)邏輯存儲(chǔ)結(jié)構(gòu)表空間(TableSpace)段(Segment)區(qū)(Extent)塊(Block)Oracle數(shù)據(jù)庫(kù)文件類型及其關(guān)聯(lián)2.1.1數(shù)據(jù)文件(DataFile)數(shù)據(jù)庫(kù)中所有的數(shù)據(jù)最終都保存在數(shù)據(jù)文件中。每個(gè)Oracle數(shù)據(jù)庫(kù)都有一個(gè)或多個(gè)物理數(shù)據(jù)文件數(shù)據(jù)文件中包括表數(shù)據(jù)索引數(shù)據(jù)數(shù)據(jù)字典定義回滾事務(wù)所需的信息存儲(chǔ)過(guò)程、函數(shù)和數(shù)據(jù)包的代碼用來(lái)排序的臨時(shí)數(shù)據(jù)一個(gè)數(shù)據(jù)文件只能與一個(gè)數(shù)據(jù)庫(kù)相關(guān)聯(lián)(N:1)??梢詫?duì)數(shù)據(jù)文件設(shè)置一些特性,在數(shù)據(jù)庫(kù)空間用完的情況下可以自動(dòng)擴(kuò)展。一個(gè)或多個(gè)數(shù)據(jù)文件構(gòu)成了一個(gè)數(shù)據(jù)庫(kù)存儲(chǔ)的邏輯單元——表空間(tablespace)。
提示:表空間是數(shù)據(jù)庫(kù)存儲(chǔ)的邏輯單位。數(shù)據(jù)庫(kù)文件如果離開了表空間將失去意義,而表空間如果離開了數(shù)據(jù)文件將失去物理基礎(chǔ)數(shù)據(jù)文件的特點(diǎn)例:使用數(shù)據(jù)字典dba_data_files查看表空間system所對(duì)應(yīng)的數(shù)據(jù)文件的部分信息。SQL>descdba_data_files;SQL>selectfile_name,tablespace_name,autoextensiblefromdba_data_fileswheretablespace_name=‘SYSTEM’;dba_data_files表結(jié)構(gòu):查詢執(zhí)行結(jié)果:2.1.2控制文件數(shù)據(jù)庫(kù)控制文件(controlfile)是一個(gè)很小的二進(jìn)制文件,用于維護(hù)數(shù)據(jù)庫(kù)的全局物理結(jié)構(gòu),它存放著數(shù)據(jù)庫(kù)中數(shù)據(jù)文件和日志文件的信息。創(chuàng)建數(shù)據(jù)庫(kù)時(shí),同時(shí)就提供了與之對(duì)應(yīng)的控制文件。每一個(gè)控制文件只能與一個(gè)Oracle數(shù)據(jù)庫(kù)相關(guān)聯(lián)??刂莆募藬?shù)據(jù)庫(kù)實(shí)例在啟動(dòng)和正常操作時(shí),訪問(wèn)數(shù)據(jù)庫(kù)所需的關(guān)于數(shù)據(jù)庫(kù)的信息。一旦損壞,數(shù)據(jù)庫(kù)將無(wú)法正常工作查詢當(dāng)前數(shù)據(jù)庫(kù)的控制文件信息(使用數(shù)據(jù)字典:V$controlfile)提示:Oracle一般會(huì)默認(rèn)創(chuàng)建3個(gè)包含相同信息的控制文件,分別存儲(chǔ)在不同磁盤互為鏡像,以防其中之一受損時(shí),數(shù)據(jù)庫(kù)可以調(diào)用其他控制文件繼續(xù)工作SQL>columnnameformata50;SQL>selectnamefromV$controlfile;控制文件包包含的信息息數(shù)據(jù)庫(kù)名稱稱數(shù)據(jù)庫(kù)創(chuàng)建建的時(shí)間戳戳相關(guān)的數(shù)據(jù)據(jù)文件、重重演日志文文件的名稱稱和位置表空間信息息數(shù)據(jù)文件脫脫機(jī)范圍日志歷史歸檔日志信信息備份組和備備份塊信息息備份數(shù)據(jù)文文件和重演演日志信息息數(shù)據(jù)文件拷拷貝信息當(dāng)前日志序序列數(shù)檢查點(diǎn)(checkpoint)信息息2.1.3重做做日志文件件每一個(gè)Oracle數(shù)據(jù)庫(kù)都都有一個(gè)由由兩個(gè)或多多個(gè)重演日日志文件(redologfile)構(gòu)成成的文件組組,這組重重演日志文文件合稱為為數(shù)據(jù)庫(kù)的的重演日志志。一個(gè)重演日日志文件是是由重做條條目(redoentry,也叫重重做記錄)組成的。。重演日志的的主要功能能是記錄下下所有數(shù)據(jù)據(jù)的改變。。重演日志文文件中的信信息可以用用在數(shù)據(jù)庫(kù)庫(kù)從系統(tǒng)失失敗或者介介質(zhì)失敗的的恢復(fù)之中中。記錄數(shù)據(jù)庫(kù)庫(kù)所有修改改信息的文文件,簡(jiǎn)稱稱日志文件件,是數(shù)據(jù)庫(kù)最最重要的文文件之一。。其中修改信信息包括數(shù)據(jù)的修改改信息或者數(shù)據(jù)庫(kù)結(jié)構(gòu)構(gòu)的修改信息等等。為了確保日日志文件的的安全,在在實(shí)際應(yīng)用用中,允許許對(duì)日志文文件進(jìn)行鏡鏡像,它們們構(gòu)成一個(gè)個(gè)日志文件件組,同一一個(gè)族的日日志文件最最好放在不不同的磁盤盤中。Oracle中的多多個(gè)日志文文件組是循循環(huán)使用的的。當(dāng)所有有的日志文文件組的空空間都被填填滿后,系系統(tǒng)將重新新切換到第第一個(gè)日志志文件組,,發(fā)生日志志切換時(shí),,日志文件件組中已有有的信息是是否被覆蓋蓋取決于系系統(tǒng)運(yùn)行的的模式(歸歸檔模式和和非歸檔模模式。)日志文件組組2.1.4其他他文件1.歸檔重重演日志文文件歸檔重演日日志文件(archivelogfile)就是對(duì)對(duì)寫滿的重重演日志文文件進(jìn)行復(fù)復(fù)制并保存存而生成的的文件。可以通過(guò)設(shè)設(shè)置數(shù)據(jù)庫(kù)庫(kù)為歸檔模模式(ARCHIVELOGmode)下來(lái)來(lái)自動(dòng)地保保存日志文文件。歸檔檔進(jìn)程(ARCO)在后臺(tái)負(fù)負(fù)責(zé)把寫滿滿的重演日日志文件復(fù)復(fù)制到歸檔檔日志目標(biāo)標(biāo)中。歸檔檔日志文件件在數(shù)據(jù)庫(kù)庫(kù)恢復(fù)時(shí)起起決定性作作用。2.參數(shù)數(shù)文件(parameterfile)參數(shù)文件包包含了一組組關(guān)于數(shù)據(jù)據(jù)庫(kù)和實(shí)例例的配置參參數(shù)。主要要包括數(shù)據(jù)據(jù)庫(kù)名和控控制文件所所在路徑。。有文本參參數(shù)文件((parameterFile,簡(jiǎn)稱Pfile。ini<SID>.ora)和服務(wù)器器參數(shù)文件件(ServerParameterFile,簡(jiǎn)稱Spfile,spfile<SID>.ora)兩種類型型。Oracle推薦用戶使使用一個(gè)服服務(wù)器參數(shù)數(shù)文件作為為維護(hù)初始始化參數(shù)的的動(dòng)態(tài)手段段。一個(gè)服服務(wù)器參數(shù)數(shù)文件允許許用戶在一一個(gè)服務(wù)器器端的磁盤盤文件里持持久地保存存和管理初初始化參數(shù)數(shù)。3.警警告、跟蹤蹤日志文件件每一個(gè)服務(wù)務(wù)器和后臺(tái)臺(tái)進(jìn)程都可可以寫入一一個(gè)相關(guān)的的跟蹤文件件(tracefile)。當(dāng)一個(gè)個(gè)進(jìn)程發(fā)現(xiàn)現(xiàn)了一個(gè)內(nèi)內(nèi)部錯(cuò)誤的的時(shí)候,它它把關(guān)于錯(cuò)錯(cuò)誤的信息息轉(zhuǎn)儲(chǔ)到它它的跟蹤文文件里。寫寫入到跟蹤蹤文件的一一部分信息息是給數(shù)據(jù)據(jù)庫(kù)管理員員使用的,,而其他信信息是給Oracle支持服服務(wù)的。跟跟蹤文件信信息還可以以用于調(diào)整整應(yīng)用程序序和實(shí)例。。警告文件(alertfile)是是一種特殊殊的跟蹤文文件,一個(gè)個(gè)數(shù)據(jù)庫(kù)的的警告文件件就是包括括按時(shí)間排排序的消息息和錯(cuò)誤的的記錄。4.備備份文件用戶管理的的備份和恢恢復(fù)實(shí)際上上就是要求求用戶在試試圖恢復(fù)備備份的時(shí)候候先還原備備份文件。。服務(wù)器管管理的備份份和恢復(fù)管管理了備份份過(guò)程,例例如,調(diào)度度備份及恢恢復(fù)過(guò)程就就是在需要要恢復(fù)的時(shí)時(shí)候施加正正確的備份份文件。主要的邏輯輯存儲(chǔ)結(jié)構(gòu)構(gòu):表空間各種段數(shù)據(jù)段索引段臨時(shí)段回滾段區(qū)間數(shù)據(jù)塊2.2Oracle數(shù)據(jù)據(jù)庫(kù)的邏輯輯存儲(chǔ)結(jié)構(gòu)構(gòu)表空間段數(shù)據(jù)塊數(shù)據(jù)塊數(shù)據(jù)庫(kù)表空間段區(qū)區(qū)………Oracle數(shù)據(jù)庫(kù)的邏輯結(jié)構(gòu)表空間是Oracle中最大大的邏輯存存儲(chǔ)結(jié)構(gòu),,它與物理理上的一個(gè)個(gè)或多個(gè)數(shù)數(shù)據(jù)文件相相對(duì)應(yīng),每每個(gè)Oracle數(shù)數(shù)據(jù)庫(kù)都至至少擁有一一個(gè)表空間間。表空間的大大小等于構(gòu)構(gòu)成表空間間的所有數(shù)數(shù)據(jù)文件大大小的總和和。表空間用于于存儲(chǔ)用戶戶在數(shù)據(jù)庫(kù)庫(kù)中創(chuàng)建的的所有的內(nèi)內(nèi)容。2.2.1表空間間(Tablespace)表空間與數(shù)數(shù)據(jù)文件的的關(guān)系一個(gè)表空間間與硬盤上上的一個(gè)或或多個(gè)物理理數(shù)據(jù)文件件相對(duì)應(yīng)。。例:通過(guò)數(shù)數(shù)據(jù)字典dba_tablespaces,查查看當(dāng)前數(shù)數(shù)據(jù)庫(kù)的所所有表空間間的名稱SQL>selecttablespace_namefromdba_tablespaces;Oracle自動(dòng)創(chuàng)創(chuàng)建的表空空間的說(shuō)明明:見P23頁(yè)中表表2-1系統(tǒng)表空間間臨時(shí)表空間間工具表空間間用戶表空間間數(shù)據(jù)庫(kù)索引引表空間回滾表空間間主要的數(shù)據(jù)據(jù)庫(kù)表空間間Oracle允許在在逐個(gè)表空空間基礎(chǔ)上上控制數(shù)據(jù)據(jù)庫(kù)數(shù)據(jù)的的可用性在聯(lián)機(jī)表空空間中的數(shù)數(shù)據(jù)對(duì)于應(yīng)應(yīng)用程序和和數(shù)據(jù)庫(kù)來(lái)來(lái)說(shuō)是可用用的在脫機(jī)表空空間中的數(shù)數(shù)據(jù)對(duì)于應(yīng)應(yīng)用程序和和數(shù)據(jù)庫(kù)來(lái)來(lái)說(shuō)是不可可用的,即即使當(dāng)數(shù)據(jù)據(jù)庫(kù)是可用用的也是如如此。聯(lián)機(jī)和脫機(jī)機(jī)表空間永久表空間間和臨時(shí)表表空間在Oracle數(shù)據(jù)據(jù)庫(kù)中,大大多數(shù)表空空間是永久久表空間。。永久表空空間存儲(chǔ)單單個(gè)SQL請(qǐng)求和事事務(wù)中必須須存留的信信息。Oracle還允許許在數(shù)據(jù)庫(kù)庫(kù)中創(chuàng)建臨臨時(shí)表空間間。臨時(shí)表表空間使事事務(wù)能夠用用于處理復(fù)復(fù)雜SQL操作的大大量臨時(shí)工工作空間,,如存儲(chǔ)查查詢、連接接查詢和建建立索引等等。段是一組盤區(qū)區(qū),是Oracle管理理數(shù)據(jù)庫(kù)對(duì)象象的單位。是是終端用戶能能處理的最小小單位。Oracle為段分配的的空間是以數(shù)數(shù)據(jù)區(qū)為單位位的,當(dāng)斷的的數(shù)據(jù)區(qū)已滿滿,Oracle圍棋分分配另一個(gè)數(shù)數(shù)據(jù)區(qū)。段的數(shù)據(jù)區(qū)可可以是不連續(xù)續(xù)的磁盤空間間。段可以分為::數(shù)據(jù)段、索索引段、臨時(shí)時(shí)段、回退段段四種類型。。段段(Segment)1.數(shù)據(jù)段用于存儲(chǔ)表中中的數(shù)據(jù)。數(shù)數(shù)據(jù)段的名稱稱與表的名稱稱相同。系統(tǒng)統(tǒng)為分區(qū)表的的每個(gè)分區(qū)分分配一個(gè)數(shù)據(jù)據(jù)段。2.索引段用于存儲(chǔ)表中中國(guó)的所有索索引信息。索索引段的名稱稱與索引相同同。分區(qū)索引引的每一個(gè)分分區(qū)對(duì)應(yīng)一個(gè)個(gè)索引段。3.臨時(shí)表臨時(shí)段用于存存儲(chǔ)臨時(shí)數(shù)據(jù)據(jù)。排序或者者匯總時(shí)所產(chǎn)產(chǎn)生的臨時(shí)數(shù)數(shù)據(jù)都存儲(chǔ)在在臨時(shí)段中,,該段由系統(tǒng)統(tǒng)在用戶的臨臨時(shí)表空間中中自動(dòng)創(chuàng)建,,兵在排序或或者匯總結(jié)束束是自動(dòng)消除除。4.回退段用于存儲(chǔ)用戶戶數(shù)據(jù)被修改改之前的值。。用于用戶進(jìn)進(jìn)行回退(恢恢復(fù))操作時(shí)時(shí)使用。每個(gè)個(gè)Oracle數(shù)據(jù)庫(kù)至至少擁有一個(gè)個(gè)回退段。區(qū)區(qū)(EXtent)區(qū)時(shí)磁盤空間間分配的最小小單位,由一一個(gè)或多個(gè)數(shù)數(shù)據(jù)塊組成。。當(dāng)段中的所所有空間被使使用完后,系系統(tǒng)將自動(dòng)為為該段分配一一個(gè)新的區(qū)。。段所包含的區(qū)區(qū)的個(gè)數(shù)由::minextents和maxextents參數(shù)決定定。數(shù)數(shù)據(jù)塊是用來(lái)管理存存儲(chǔ)空間的最最基本的單位位,也是最小小的邏輯存儲(chǔ)儲(chǔ)單位。塊頭部:包含含數(shù)據(jù)塊中的的餓一般屬性性信息,如物物理地址、所所屬斷的類型型等。表目錄:用來(lái)來(lái)存儲(chǔ)相關(guān)對(duì)對(duì)象的信息。。行目錄:用來(lái)來(lái)存儲(chǔ)數(shù)據(jù)塊塊中有效的行行信息。空閑空間:數(shù)數(shù)據(jù)塊中還沒(méi)沒(méi)有使用的存存儲(chǔ)空間。行空間:數(shù)數(shù)據(jù)塊中已使使用的存儲(chǔ)空空間塊頭部表目錄行目錄空閑空間行空間塊頭部信息區(qū)塊的默認(rèn)大小小,由db_block_size參數(shù)在數(shù)數(shù)據(jù)庫(kù)創(chuàng)建時(shí)時(shí)指定,一旦旦數(shù)據(jù)庫(kù)創(chuàng)建建成功后無(wú)法法修改。表表空間、段、、分區(qū)和數(shù)據(jù)據(jù)塊的關(guān)系圖圖2.3Oracle數(shù)據(jù)庫(kù)系統(tǒng)統(tǒng)結(jié)構(gòu)與實(shí)例例Oracle數(shù)據(jù)庫(kù)系統(tǒng)統(tǒng)結(jié)構(gòu)包括::Oracle實(shí)例(Instance)、數(shù)據(jù)據(jù)庫(kù)文件、用用戶進(jìn)程、服服務(wù)器進(jìn)程,,以及其他文文件如:密碼碼文件、和歸歸檔文件(ArchiveLogFile)等。Oracle數(shù)據(jù)庫(kù)管理理系統(tǒng)包括::Oracle數(shù)據(jù)庫(kù)和和Oracle實(shí)例Oracle數(shù)據(jù)庫(kù)是一一組相關(guān)的操操作系統(tǒng)文件件的集合2.3.1Oracle數(shù)據(jù)庫(kù)系系統(tǒng)結(jié)構(gòu)LibrarycacheDatadictcacheOracle數(shù)據(jù)庫(kù)系統(tǒng)統(tǒng)結(jié)構(gòu)Oracle系統(tǒng)結(jié)構(gòu)構(gòu)圖2.3.2Oracle數(shù)據(jù)庫(kù)庫(kù)實(shí)例Oracle實(shí)例由一些些內(nèi)存區(qū)和后后臺(tái)進(jìn)程組成成。內(nèi)存區(qū)域域主要包括::數(shù)據(jù)庫(kù)高速速緩存、共享享池、流池以以及其他可選選內(nèi)存區(qū)(如如java池池)。后臺(tái)進(jìn)進(jìn)程主要由::系統(tǒng)監(jiān)控進(jìn)進(jìn)程(SMON)、進(jìn)程程監(jiān)控(PMON)、數(shù)數(shù)據(jù)庫(kù)寫進(jìn)程程(DBWR)、日志寫寫進(jìn)程(LGWR)、檢檢驗(yàn)點(diǎn)進(jìn)程(CKPT)、其他進(jìn)程程(如ARCn進(jìn)程、RECO進(jìn)程程)1.實(shí)例例和數(shù)據(jù)庫(kù)之之間的關(guān)系2.Oracle實(shí)實(shí)例與參數(shù)文文件每個(gè)實(shí)例都要要用稱為SID(systemidentifier,系統(tǒng)標(biāo)識(shí)識(shí)符)的符號(hào)號(hào)來(lái)標(biāo)識(shí)決定實(shí)例的大大小及組成的的參數(shù)存儲(chǔ)在在初始化參數(shù)數(shù)文件(init.ora)中,啟啟動(dòng)實(shí)例時(shí)讀讀取這個(gè)文件件,在運(yùn)行時(shí)時(shí)可由數(shù)據(jù)庫(kù)庫(kù)管理員修改改對(duì)該文件的任任何修改都只只有在數(shù)據(jù)庫(kù)庫(kù)下一次啟動(dòng)動(dòng)時(shí)才起作用用2.3.3Oracle數(shù)據(jù)庫(kù)庫(kù)系統(tǒng)的內(nèi)存存結(jié)構(gòu)1.系統(tǒng)全局局區(qū)(SGA)主要部分分組成數(shù)據(jù)庫(kù)高速緩緩存區(qū)共享池重做日志緩存存區(qū)大緩存池固定的SGA。緩沖區(qū)域共享區(qū)域系統(tǒng)全局區(qū)(SGA)軟件代碼區(qū)域??臻g會(huì)話信息其他區(qū)程序全局區(qū)(PGA)Oracle內(nèi)存結(jié)構(gòu)圖數(shù)據(jù)庫(kù)高速緩緩存區(qū)
(DatabaseBufferCache)圖2.8數(shù)數(shù)據(jù)庫(kù)高高速緩存區(qū)用于存儲(chǔ)從磁磁盤數(shù)據(jù)文件件中讀取的數(shù)數(shù)據(jù),供所有有用戶共享,,以提高數(shù)據(jù)據(jù)庫(kù)的整體效效率共享池Sharepool圖2.9共共享池中中的內(nèi)存結(jié)構(gòu)構(gòu)用于保存最近近執(zhí)行的SQL語(yǔ)句、PL/SQL程序的數(shù)據(jù)據(jù)字典信息,,以用于系統(tǒng)統(tǒng)對(duì)其進(jìn)行語(yǔ)語(yǔ)法分析、編編譯和執(zhí)行的的內(nèi)存區(qū)域。。重做日志緩存存區(qū)用于在內(nèi)存中中存儲(chǔ)未被刷刷新寫入聯(lián)機(jī)機(jī)重做日志文文件的重做信信息是Oracle在循環(huán)方方式下使用的的先進(jìn)先出的的緩沖區(qū)大小可在初始始化參數(shù)文件件中由logbuffer參數(shù)設(shè)設(shè)定,以字節(jié)節(jié)為單位大緩存池是Oracle的一個(gè)可可選內(nèi)存區(qū),,主要用于多多線程的服務(wù)務(wù)器或備份還還原等操作固定的SGA用于存儲(chǔ)極大大量的值。為為了對(duì)實(shí)例進(jìn)進(jìn)行操作,這這些值需要在在內(nèi)部進(jìn)行記記錄。程序全局區(qū)(PGA)獨(dú)立于SGA,不會(huì)出現(xiàn)現(xiàn)在SGA中中。由操作系系統(tǒng)在本地分分配。在系統(tǒng)全局區(qū)區(qū)可用的共享享內(nèi)存連接到Oracle數(shù)據(jù)據(jù)庫(kù)的進(jìn)程的的私有的內(nèi)存存區(qū)--程序序全局區(qū)(PGA)程序全局區(qū)不不能共享程序全局區(qū)含含有單個(gè)進(jìn)程程工作時(shí)需要要的數(shù)據(jù)、控控制信息、進(jìn)進(jìn)程會(huì)話變量量和內(nèi)部數(shù)組組等2.3.4Oracle數(shù)據(jù)庫(kù)庫(kù)系統(tǒng)的后臺(tái)臺(tái)進(jìn)程圖2.10典型的的Oracle后臺(tái)進(jìn)程程集合在NT服務(wù)器器上,后臺(tái)進(jìn)進(jìn)程的執(zhí)行是是作為OracleService的多線程程實(shí)現(xiàn)的,它它允許Oracle進(jìn)程程更有效地使使用共享內(nèi)存存地址空間,,從而減少了了NT操操作系統(tǒng)處理理。Oracle數(shù)據(jù)庫(kù)啟動(dòng)動(dòng)時(shí),會(huì)啟動(dòng)動(dòng)多個(gè)Oracle后臺(tái)臺(tái)進(jìn)程,用于于異步執(zhí)行不不同的特定任任務(wù)。通過(guò)查查詢數(shù)據(jù)字典典v$bgprocess可以查看看它們的相關(guān)關(guān)信息。DBWn進(jìn)進(jìn)程:數(shù)據(jù)庫(kù)寫入進(jìn)進(jìn)程,負(fù)責(zé)將將數(shù)據(jù)緩沖區(qū)區(qū)中的數(shù)據(jù)寫寫入數(shù)據(jù)文件件。其主要有有以下幾個(gè)作作用:管理數(shù)據(jù)緩沖沖區(qū),一遍用用戶進(jìn)程總能能找到空閑的的緩沖區(qū)。將所有修改后后的緩沖區(qū)數(shù)數(shù)據(jù)(dirtydata)寫入入數(shù)據(jù)文件。。使用LRU算算法將最近使使用過(guò)的塊保保留在內(nèi)存中中。通過(guò)延遲些來(lái)來(lái)優(yōu)化磁盤I/O讀寫。。DBWn進(jìn)程程最多可以啟啟動(dòng)20個(gè),,分別命名為為DBW0,,DBW1…….DBW9,DBWa,,,DBWj。由參參數(shù)db_writer_processes決定。LGWR進(jìn)進(jìn)程日志寫入進(jìn)程程,負(fù)責(zé)管理理日志緩沖區(qū)區(qū)的后臺(tái)進(jìn)程程。將日志志信息同步的的寫入在線日日志文件組中中。若整個(gè)日日志文件組均均無(wú)法使用,,則進(jìn)程會(huì)被被掛起,直至至問(wèn)題被解決決。CKPT進(jìn)進(jìn)程檢驗(yàn)點(diǎn)進(jìn)程。。一般在發(fā)生生日志切換時(shí)時(shí)自動(dòng)產(chǎn)生,,用于縮短實(shí)實(shí)例恢復(fù)所需需要的時(shí)間。。在檢查點(diǎn)期期間,該進(jìn)程程更新控制文文件與數(shù)據(jù)文文件的標(biāo)題,,從而反映最最近成功SCN(系統(tǒng)更更改號(hào))。參數(shù)Log_checkpoint_timeout::設(shè)置檢查點(diǎn)點(diǎn)產(chǎn)生的時(shí)間間間隔,默認(rèn)認(rèn)1800秒秒。參數(shù)Log_checkpoint_interval:設(shè)置一個(gè)個(gè)檢查點(diǎn)需要要填充的日志志文件塊的數(shù)數(shù)目。默認(rèn)為為0。SMON進(jìn)程程:系統(tǒng)監(jiān)控控進(jìn)程,所負(fù)負(fù)責(zé)的工作有有:數(shù)據(jù)庫(kù)實(shí)例故故障恢復(fù)管理和維護(hù)表表空間中的空空閑空間系統(tǒng)啟動(dòng)期間間,回收所有有表空間中的的臨時(shí)段PMON進(jìn)程程:用戶進(jìn)程程監(jiān)控進(jìn)程,,負(fù)責(zé)用戶進(jìn)進(jìn)程故障恢復(fù)復(fù),清理釋放放用戶進(jìn)程的的內(nèi)存區(qū)域。。周期性檢查查調(diào)度進(jìn)程和和服務(wù)器進(jìn)程程狀態(tài)。ARCn進(jìn)程程:歸檔進(jìn)程程。用于將邪邪門的日志文文件復(fù)制到歸歸檔日志文件件中,防止日日志文件組中中的日志信息息被覆蓋或者者破壞。運(yùn)行行在數(shù)據(jù)庫(kù)服服務(wù)器歸檔模模式下。RECO進(jìn)程程:存在于分分布式數(shù)據(jù)庫(kù)庫(kù)系統(tǒng)中,用用于自動(dòng)解決決在分布式數(shù)數(shù)據(jù)庫(kù)系統(tǒng)中中出現(xiàn)的事務(wù)務(wù)故障。主要要負(fù)責(zé)事務(wù)回回滾,保持分分布式系統(tǒng)中中數(shù)據(jù)的一致致性。數(shù)數(shù)據(jù)庫(kù)字典典Oracle數(shù)據(jù)庫(kù)字典典(datadictionary),是存存儲(chǔ)在數(shù)據(jù)庫(kù)庫(kù)中的所有對(duì)對(duì)象信息的知知識(shí)庫(kù),Oracle數(shù)數(shù)據(jù)庫(kù)管理系系統(tǒng)使用數(shù)據(jù)據(jù)字典獲取對(duì)對(duì)象信息和安安全信息。而而用戶和數(shù)據(jù)據(jù)庫(kù)系統(tǒng)管理理員則用數(shù)據(jù)據(jù)字典查詢數(shù)數(shù)據(jù)庫(kù)信息。。數(shù)據(jù)字典中保保存有數(shù)據(jù)庫(kù)庫(kù)中對(duì)象和段段的信息,如如:表、索引引、視圖、包包、存儲(chǔ)過(guò)程程以及與用戶戶、權(quán)限、角角色、審計(jì)和和約束等相關(guān)關(guān)的信息數(shù)據(jù)字典試只只讀的,用戶戶不能修改數(shù)數(shù)據(jù)信息和結(jié)結(jié)構(gòu)。數(shù)據(jù)字典主要要有:user視圖,all視圖,,dba視圖圖,v$視圖圖,GV$視視圖。詳見P32表2-2。2.4Oracle數(shù)據(jù)庫(kù)的應(yīng)應(yīng)用結(jié)構(gòu)主要的應(yīng)用結(jié)結(jié)構(gòu)有:多磁盤結(jié)構(gòu)磁盤映像系統(tǒng)統(tǒng)客戶/服務(wù)器器系統(tǒng)多線程服務(wù)器器系統(tǒng)并行數(shù)據(jù)庫(kù)系系統(tǒng)分布式數(shù)據(jù)庫(kù)庫(kù)系統(tǒng)OracleWebServer系統(tǒng)多多磁盤結(jié)結(jié)構(gòu)圖2.14多磁盤盤結(jié)構(gòu)上的Oracle服務(wù)器磁磁盤映像像系統(tǒng)磁盤映像的好好處。磁盤映像可以以作為磁盤失失效時(shí)的備份份來(lái)使用??梢愿倪M(jìn)系統(tǒng)統(tǒng)的性能客客戶/服服務(wù)器系統(tǒng)應(yīng)用程序運(yùn)行行在客戶端的的工作站上,,Oracle數(shù)據(jù)庫(kù)運(yùn)運(yùn)行在服務(wù)器器上,二者通通過(guò)以太網(wǎng)連連接在一起。。為了使客戶戶和服務(wù)器易易于連接,Oracle提供了SQL*Net的高層網(wǎng)絡(luò)絡(luò)協(xié)議。在客客戶/服務(wù)器器環(huán)境下,所所有客戶都安安裝了SQL*Net客客戶端軟件,,服務(wù)器則安安裝相應(yīng)的服服務(wù)端軟件。。SQL*Net提供了了一個(gè)程序代代碼的公用接接口,而不用用考慮其底層層的實(shí)現(xiàn)。基于客戶/服服務(wù)器的Oracle系系統(tǒng)圖2.15基基于于客客戶戶//服服務(wù)務(wù)器器的的Oracle系系統(tǒng)統(tǒng)客戶戶機(jī)機(jī)與與服服務(wù)務(wù)器器通通信信必必須須進(jìn)進(jìn)行行的的幾幾步步操操作作服務(wù)務(wù)器器必必須須配配置置成成通通過(guò)過(guò)網(wǎng)網(wǎng)絡(luò)絡(luò)接接受受通通信信。。服務(wù)務(wù)器器必必須須識(shí)識(shí)別別哪哪個(gè)個(gè)數(shù)數(shù)據(jù)據(jù)庫(kù)庫(kù)允允許許網(wǎng)網(wǎng)絡(luò)絡(luò)登登錄錄。。服務(wù)務(wù)器器必必須須運(yùn)運(yùn)行行SQL*Net。??蛻魬魴C(jī)機(jī)必必須須配配置置成成通通過(guò)過(guò)網(wǎng)網(wǎng)絡(luò)絡(luò)進(jìn)進(jìn)行行通通信信。??蛻魬魴C(jī)機(jī)必必須須有有充充足足的的內(nèi)內(nèi)存存和和磁磁盤盤資資源源可可供供使使用用。??蛻魬魴C(jī)機(jī)必必須須已已安安裝裝有有SQL*Net,,并并指指定定一一個(gè)個(gè)連連接接字字符符串串。。三層層模模式式的的Oracle系系統(tǒng)統(tǒng)computerserver客戶戶機(jī)機(jī)1客戶戶機(jī)機(jī)2數(shù)據(jù)據(jù)庫(kù)庫(kù)服服務(wù)務(wù)器器應(yīng)用用程程序序服服務(wù)務(wù)器器圖2.16三三層層模模式式的的Oracle系系統(tǒng)統(tǒng)三層層配配置置的的優(yōu)優(yōu)點(diǎn)點(diǎn)可量量測(cè)測(cè)性性有利利于于應(yīng)應(yīng)用用程程序序的的執(zhí)執(zhí)行行易于于分分布布式式處處理理提高高了了性性能能能簡(jiǎn)簡(jiǎn)化化對(duì)對(duì)客客戶戶機(jī)機(jī)的的維維護(hù)護(hù)多多線線程程服服務(wù)務(wù)器器系系統(tǒng)統(tǒng)多線線程程服服務(wù)務(wù)器器(MTS)允允許許多多用用戶戶會(huì)會(huì)話話共共享享一一組組服服務(wù)務(wù)器器進(jìn)進(jìn)程程,,因因而而減減少少了了支支持持大大量量用用戶戶所所必必要要的的資資源源開開銷銷。。同同時(shí)時(shí),,多多線線程程服服務(wù)務(wù)器器的的體體系系結(jié)結(jié)構(gòu)構(gòu)也也允允許許降降低低這這些些服服務(wù)務(wù)器器會(huì)會(huì)話話的的全全部部空空閑閑時(shí)時(shí)間間。。多線線程程服服務(wù)務(wù)器器的的體體系系結(jié)結(jié)構(gòu)構(gòu)不不同同于于專專用用服服務(wù)務(wù)器器。。共享享服服務(wù)務(wù)器器進(jìn)進(jìn)程程不不直直接接與與調(diào)調(diào)度度器器或或服服務(wù)務(wù)器器進(jìn)進(jìn)程程交交互互,,而而是是監(jiān)監(jiān)控控請(qǐng)請(qǐng)求求隊(duì)隊(duì)列列。。多線線程程服服務(wù)務(wù)器器的的下下列列參參數(shù)數(shù)進(jìn)進(jìn)行行設(shè)設(shè)置置mts_dispatchersmts_serversmts_max_servers可以以通通過(guò)過(guò)在在SQL*Plus中中查查詢?cè)儎?dòng)動(dòng)態(tài)態(tài)視視圖圖V$SESSION來(lái)來(lái)確確定定當(dāng)當(dāng)前前連連接接到到啟啟動(dòng)動(dòng)數(shù)數(shù)據(jù)據(jù)庫(kù)庫(kù)的的類類型型,,若若結(jié)結(jié)果果是是DEDICATED,,則則目目前前是是專專用用服服務(wù)務(wù)器器配配置置;;若若結(jié)結(jié)果果是是SHARED,,則則目目前前是是多多線線程程服服務(wù)務(wù)器器。。查詢?cè)兠盍顬闉椋海簕SELECTserverFROMV$SESSIONWHEREaudsid=USERENV('SESSIONID');}并并行行數(shù)數(shù)據(jù)據(jù)庫(kù)庫(kù)系系統(tǒng)統(tǒng)配置置針針對(duì)對(duì)一一個(gè)個(gè)Oracle實(shí)實(shí)例例訪訪問(wèn)問(wèn)的的數(shù)數(shù)據(jù)據(jù)庫(kù)庫(kù)針對(duì)對(duì)兩兩個(gè)個(gè)或或兩兩個(gè)個(gè)以以上上數(shù)數(shù)據(jù)據(jù)庫(kù)庫(kù)實(shí)實(shí)例例(服服務(wù)務(wù)器器)訪訪問(wèn)問(wèn)同同一一個(gè)個(gè)數(shù)數(shù)據(jù)據(jù)庫(kù)庫(kù)----Oracle并并行行服服務(wù)務(wù)器器(oracleparallelserver,,OPS)3個(gè)獨(dú)獨(dú)立的的Oracle實(shí)例例共享享同一一數(shù)據(jù)據(jù)庫(kù)文文件圖2.18Oracle并并行服服務(wù)器器并行服服務(wù)器器的好好處可以增增加數(shù)數(shù)據(jù)庫(kù)庫(kù)資源源的數(shù)數(shù)量或或凈值值數(shù)量量允許數(shù)數(shù)據(jù)庫(kù)庫(kù)為更更多的的用戶戶處理理更多多的工工作提供了了一種種對(duì)災(zāi)災(zāi)難進(jìn)進(jìn)行恢恢復(fù)的的手段段可以根根據(jù)執(zhí)執(zhí)行的的進(jìn)程程的類類型對(duì)對(duì)用戶戶進(jìn)行行分組組,并并且大大量占占用CPU的用用戶可可以留留在與與常規(guī)規(guī)聯(lián)機(jī)機(jī)處理理事務(wù)務(wù)相分分離的的一個(gè)個(gè)主機(jī)機(jī)上設(shè)計(jì)使使用并并行數(shù)數(shù)據(jù)庫(kù)庫(kù)時(shí)需需要注注意的的問(wèn)題題可以使使用不不同的的初始始化參參數(shù)配配置在在并行行服務(wù)務(wù)器數(shù)數(shù)據(jù)庫(kù)庫(kù)上運(yùn)運(yùn)行的的各種種實(shí)例例。用戶可可以把把系統(tǒng)統(tǒng)設(shè)計(jì)計(jì)為使使用具具有一一個(gè)或或多個(gè)個(gè)富余余實(shí)例例的并并行服服務(wù)器器,以以便在在主實(shí)實(shí)例不不可獲獲取時(shí)時(shí)仍能能支持持自己己的所所有用用戶。。如果硬硬件可可以支支持足足夠的的節(jié)點(diǎn)點(diǎn),可可以在在相同同的數(shù)數(shù)據(jù)庫(kù)庫(kù)上使使用并并行服服務(wù)器器的伸伸縮特特性及及故障障恢復(fù)復(fù)能力力。設(shè)計(jì)使使用并并行數(shù)數(shù)據(jù)庫(kù)庫(kù)時(shí)需需要注注意的的問(wèn)題題在設(shè)計(jì)計(jì)多實(shí)實(shí)例數(shù)數(shù)據(jù)庫(kù)庫(kù)時(shí),,在伸伸縮特特性及及故障障恢復(fù)復(fù)能力力這兩兩個(gè)功功能之之間進(jìn)進(jìn)行明明確的的區(qū)分分是非非常重重要的的。需要做做好準(zhǔn)準(zhǔn)備修修改單單實(shí)例例數(shù)據(jù)據(jù)庫(kù)使使用的的初始始化參參數(shù)文文件中中的參參數(shù),,以使使并行行服務(wù)務(wù)器使使用的的多個(gè)個(gè)實(shí)例例可以以成功功地相相互作作用。。在并行行方式式下啟啟動(dòng)一一個(gè)實(shí)實(shí)例的的兩種種方法法需要將將初始始化文文件中中的parallelserver設(shè)為true。通過(guò)過(guò)在SQL*Plus的STARTUP命令中中包括括PARALLEL或SHARED關(guān)鍵字字。在數(shù)據(jù)據(jù)庫(kù)管管理器器總控控臺(tái)的的實(shí)例例管理理屏上上使用用SHARED單選按按鈕。。分分布布式數(shù)數(shù)據(jù)庫(kù)庫(kù)系統(tǒng)統(tǒng)分布式式數(shù)據(jù)據(jù)庫(kù)系系統(tǒng)是是作為為一個(gè)個(gè)單獨(dú)獨(dú)的數(shù)數(shù)據(jù)庫(kù)庫(kù)但位位于不不同場(chǎng)場(chǎng)所的的系統(tǒng)統(tǒng)。這這些場(chǎng)場(chǎng)所可可以在在任何何地方方,可可以在在緊鄰鄰的辦辦公室室,也也可以以在地地球的的另一一端。。在一一個(gè)由由不同同節(jié)點(diǎn)點(diǎn)連接接起來(lái)來(lái)的網(wǎng)網(wǎng)絡(luò)環(huán)環(huán)境中中,分分布式式數(shù)據(jù)據(jù)庫(kù)擔(dān)擔(dān)當(dāng)一一個(gè)單單獨(dú)的的系統(tǒng)統(tǒng)。在在一個(gè)個(gè)分布布式環(huán)環(huán)境中中,不不同服服務(wù)器器(主主機(jī))上的的數(shù)據(jù)據(jù)庫(kù)彼彼此共共享數(shù)數(shù)據(jù)。。每個(gè)個(gè)服務(wù)務(wù)器既既能在在物理理上分分離,,又可可以保保持彼彼此間間的邏邏輯關(guān)關(guān)系。。分布式式數(shù)據(jù)據(jù)庫(kù)系系統(tǒng)圖2.19分分布式式數(shù)據(jù)據(jù)庫(kù)系系統(tǒng)分布式式事務(wù)務(wù)會(huì)的的好處處其他服服務(wù)器器上的的數(shù)據(jù)據(jù)庫(kù)可可以被被更新新,并并且這這些事事務(wù)可可以與與其他他事務(wù)務(wù)組成成一個(gè)個(gè)邏輯輯單元元數(shù)據(jù)庫(kù)庫(kù)對(duì)2PC的使使用接收的的數(shù)據(jù)據(jù)庫(kù)的的3種種響應(yīng)應(yīng)方式式準(zhǔn)備好好———已準(zhǔn)準(zhǔn)備好好進(jìn)行行更新新只讀———沒(méi)沒(méi)有準(zhǔn)準(zhǔn)備的的必要要退出———子子處理理不能能執(zhí)行行更新新2.4.7OracleWebserver系統(tǒng)統(tǒng)隨著網(wǎng)網(wǎng)絡(luò)技技術(shù)的的迅猛猛發(fā)展展,數(shù)數(shù)據(jù)庫(kù)庫(kù)技術(shù)術(shù)也面面臨著著一場(chǎng)場(chǎng)深刻刻的變變革OracleWebServer相當(dāng)當(dāng)于一一個(gè)簡(jiǎn)簡(jiǎn)單請(qǐng)請(qǐng)求傳傳送者者的角角色OracleWebServer支持持用內(nèi)內(nèi)建的的過(guò)程程創(chuàng)建建HTML文檔檔OracleWebServer的基基本組組成及及功能能Web監(jiān)聽聽器在Oracle主機(jī)機(jī)上的的HTTP引擎擎,它它接受受并管管理服服務(wù)請(qǐng)請(qǐng)求,,它可可以監(jiān)監(jiān)聽多多個(gè)遠(yuǎn)遠(yuǎn)程客客戶的的服務(wù)務(wù)請(qǐng)求求并把把這些些請(qǐng)求求交給給Web請(qǐng)請(qǐng)求代代理器器Web
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 旅游電子商務(wù) 課程設(shè)計(jì)
- Methidathion-生命科學(xué)試劑-MCE
- MC-GGFG-PAB-Exatecan-生命科學(xué)試劑-MCE
- 科技驅(qū)動(dòng)下的設(shè)計(jì)創(chuàng)新案例分析
- python 爬蟲課程設(shè)計(jì)報(bào)告
- 支付結(jié)算課程設(shè)計(jì)
- 人工智能技術(shù)發(fā)展趨勢(shì)與前景展望分析報(bào)告
- 幼兒園個(gè)別化課程設(shè)計(jì)
- 2024年珠寶行業(yè)保值回購(gòu)合同3篇
- 家用空調(diào)課程設(shè)計(jì)
- 12二年級(jí)《跳躍:多種形式跳躍的練習(xí)方法》
- 電動(dòng)給水泵液力耦合器基礎(chǔ)知識(shí)ppt課件
- 樣品管理控制流程圖
- 超實(shí)用-組合房貸計(jì)算表
- 屋面細(xì)石混凝土保護(hù)層施工方案及方法
- 西方經(jīng)濟(jì)學(xué)考試題庫(kù)含答案
- 監(jiān)理公司各部門職責(zé)
- 論辛棄疾詞作的愁情主題及其審美價(jià)值
- 新形勢(shì)下我國(guó)保險(xiǎn)市場(chǎng)營(yíng)銷的現(xiàn)狀、問(wèn)題及對(duì)策
- 完整版焦慮抑郁自評(píng)量表SASSDS
- ISO14001內(nèi)審檢查表
評(píng)論
0/150
提交評(píng)論