Oracle基礎(chǔ)知識_第1頁
Oracle基礎(chǔ)知識_第2頁
Oracle基礎(chǔ)知識_第3頁
Oracle基礎(chǔ)知識_第4頁
Oracle基礎(chǔ)知識_第5頁
已閱讀5頁,還剩50頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、Oracle 中文版 數(shù)據(jù)庫基礎(chǔ)知識數(shù)據(jù)庫基礎(chǔ)知識1教學(xué)要求n了解Oracle公司的發(fā)展史n了解Oracle數(shù)據(jù)庫的發(fā)展歷程和版本信息n掌握Oracle數(shù)據(jù)庫的體系結(jié)構(gòu)n了解Oracle數(shù)據(jù)庫服務(wù)的工作原理2教學(xué)重點和難點n一、 Oracle數(shù)據(jù)庫的體系結(jié)構(gòu)n二、 Oracle Server 工作原理3ORACLE 簡介4ORACLE介紹起源1977年6月,Larry Ellison與Bob Miner和Ed Oates在硅谷共同創(chuàng)辦了一家名為軟件開發(fā)實驗室(Software Development Laboratories,SDL)的計算機公司(ORACLE公司的前身)。沒多久,第一位員工B

2、ruce Scott)加盟進(jìn)來。1 9 7 9 年 , S D L 更 名 為 關(guān) 系 軟 件 有 限 公 司(Relational Software,Inc.,RSI),畢竟“軟件開發(fā)實驗室”不太像一個大公司的名字。1983年,為了突出公司的核心產(chǎn)品,RSI再次更名為 ORACLE。 5ORACLE介紹6ORACLE介紹Bruce Scott Larry Ellison 7ORACLE介紹發(fā)展n1984年軟件市場的情形,在數(shù)據(jù)庫市場上的霸主是Asnton-Tale公司,他們的拳頭產(chǎn)品是剛推出不久的dBase III(確切的說dBase是PC上的數(shù)據(jù)庫軟件霸主),剛剛成為全球第三大的獨立軟件公

3、司(第一和第二分別是微軟、Lotus,ORACLE在當(dāng)時還排不上號),這一年,也是蘋果公司Macintosh誕生的年度。n1986年3月12日,ORACLE公司以每股15美元公開上市,當(dāng)日以20.75美元收盤,公司市值2.7億美元。3月13日,微軟以每股21美元的發(fā)行價上市,以28美元收市,公司市值達(dá)到7億美元。遠(yuǎn)遠(yuǎn)超過了ORACLE。成功的光環(huán)下的微軟和蓋茨遮蓋住了ORACLE和Ellison的光芒,可能這也是Ellison敵視微軟的開始。 8ORACLE介紹發(fā)展nORACLE公司(即甲骨文公司)自86年推出版本5開始,系統(tǒng)具有分布數(shù)據(jù)庫處理功能.88年推出版本6,ORACLE RDBMS(

4、V6.0)可帶事務(wù)處理選項(TPO),提高了事務(wù)處理的速度.1992年推出了版本7,在ORACLE RDBMS中可帶過程數(shù)據(jù)庫選項(procedural database option)和并行服務(wù)器選項(parallel server option),1996年推出ORACLE8.0.6增加了表分區(qū)的功能,1998年推出了ORACLE8I,增加了對數(shù)據(jù)庫的增強性管理、一起在數(shù)據(jù)庫中存儲對象等,2001年,推出了ORACLE9I,使數(shù)據(jù)庫的操作更加的簡便,增強數(shù)據(jù)的安全性,同時,能夠?qū)?shù)據(jù)庫的權(quán)限細(xì)分到ROW的級別,對數(shù)據(jù)庫有著更好的控制,而且其主要面向WWW的應(yīng)用,數(shù)據(jù)庫功能得到非常強大的更新

5、。9ORACLE介紹發(fā)展n2003年9月8日,舊金山舉辦的ORACLE World大會上,Ellison宣布下一代數(shù)據(jù)庫產(chǎn)品為“ORACLE 10g”。ORACLE應(yīng)用服務(wù)器10g(ORACLE Application Server 10g)也將作為甲骨文公司下一代應(yīng)用基礎(chǔ)架構(gòu)軟件集成套件?!癵”代表“grid ,網(wǎng)格”。何謂網(wǎng)格計算?網(wǎng)格計算可以把分布在世界各地的計算機連接在一起,并且將各地的計算機資源通過高速的互聯(lián)網(wǎng)組成充分共享的資源集成。通過合理調(diào)度,不同的計算環(huán)境被綜合利用并共享。ORACLE公司已經(jīng)把這一次的“賭注”押在了網(wǎng)格計算的大市場上。但前景如何?讓我們拭目以待。 10ORAC

6、LE介紹發(fā)展n2003年6月初,ORACLE突然宣布51億美金收購商務(wù)軟件公司仁科(PeopleSoft),業(yè)內(nèi)再次震動。此舉又一次露出ORACLE 一貫善于進(jìn)攻的本性。n最終Oracle公司于2004年12月13日,與仁科公司達(dá)成協(xié)議,將以每股26.5美元的價格收購仁科股權(quán),收購交易總值高達(dá)103億美元 11前言:數(shù)據(jù)庫與數(shù)據(jù)庫管理員nOracle公司簡介:公司簡介:Oracle公司是全球最大的信息管理軟件及服務(wù)供應(yīng)商,成立于1977年,總部位于美國加州。 Oracle公司是全球領(lǐng)先的電子商務(wù)解 決方案供應(yīng)商,也是全球第二大軟件公司,在全世界145 個國家為客戶提供數(shù)據(jù)庫系統(tǒng)、工具、應(yīng)用產(chǎn)品

7、以及相關(guān) 的咨詢、培訓(xùn)和支持服務(wù)。財富100強中的98家公司都采用Oracle技術(shù)。 Oracle公司于1989年正式進(jìn)入中國市場,是第一家進(jìn)入 中國的世界軟件巨頭。1991年7月在北京建立了獨資公 司,目前在國內(nèi)設(shè)有北京、上海、廣州、成都4個辦事處。12前言:數(shù)據(jù)庫與數(shù)據(jù)庫管理員n數(shù)據(jù)庫:數(shù)據(jù)庫:是信息的載體,是一個服務(wù)于一個核心目標(biāo)的數(shù)據(jù)有組織的是信息的載體,是一個服務(wù)于一個核心目標(biāo)的數(shù)據(jù)有組織的集合。其系統(tǒng)主要包括:數(shù)據(jù)、硬件、軟件和數(shù)據(jù)庫用戶。集合。其系統(tǒng)主要包括:數(shù)據(jù)、硬件、軟件和數(shù)據(jù)庫用戶。n數(shù)據(jù)庫管理員:數(shù)據(jù)庫管理員:DataBase Administrator(DBA)其主要任

8、務(wù)是:其主要任務(wù)是:n了解了解ORACLE數(shù)據(jù)庫的體系結(jié)構(gòu)數(shù)據(jù)庫的體系結(jié)構(gòu)n安裝并且升級數(shù)據(jù)庫服務(wù)器和應(yīng)用工具。安裝并且升級數(shù)據(jù)庫服務(wù)器和應(yīng)用工具。n為數(shù)據(jù)庫系統(tǒng)分配存儲空間并規(guī)劃存儲空間。為數(shù)據(jù)庫系統(tǒng)分配存儲空間并規(guī)劃存儲空間。n啟動和關(guān)閉數(shù)據(jù)庫,管理和監(jiān)控數(shù)據(jù)庫用戶。啟動和關(guān)閉數(shù)據(jù)庫,管理和監(jiān)控數(shù)據(jù)庫用戶。n建立數(shù)據(jù)庫,維護(hù)系統(tǒng)安全。建立數(shù)據(jù)庫,維護(hù)系統(tǒng)安全。n控制并監(jiān)視數(shù)據(jù)庫用戶對數(shù)據(jù)庫的存取操作??刂撇⒈O(jiān)視數(shù)據(jù)庫用戶對數(shù)據(jù)庫的存取操作。n備份并恢復(fù)數(shù)據(jù)庫。備份并恢復(fù)數(shù)據(jù)庫。13Oracle市場價格(參考)nOracle9i/10g 企業(yè)級企業(yè)級25User 358,680nOracle

9、9i/10g 企業(yè)級企業(yè)級50User 717,360nOracle9i/10g 標(biāo)準(zhǔn)版標(biāo)準(zhǔn)版10User 64,00014Oracle 9i 簡介nOracle 9i 的版本企業(yè)版:n構(gòu)建安全可靠的、大容量的互聯(lián)網(wǎng)應(yīng)用和數(shù)據(jù)倉庫,面向企業(yè)級應(yīng)用。標(biāo)準(zhǔn)版n提供能夠通過Web瀏覽器進(jìn)行管理的高性能數(shù)據(jù)庫服務(wù),面向部門級應(yīng)用。個人版n全功能單用戶版本,面向開發(fā)技術(shù)人員。15nOracle體系結(jié)構(gòu)決定了數(shù)據(jù)庫如何使用內(nèi)存、硬盤、cpu和網(wǎng)絡(luò)。n一個Oracle server是由Oracle實例實例(instance)和數(shù)據(jù)庫兩部分組成。數(shù)據(jù)庫兩部分組成。n實例 = 內(nèi)存結(jié)構(gòu) + 一組后臺進(jìn)程n一個

10、Oracle 數(shù)據(jù)庫是一個數(shù)據(jù)單位的集合。 主要目的是為了儲存和讀取信息。Oracle 數(shù)據(jù)庫可以分為邏輯結(jié)構(gòu)邏輯結(jié)構(gòu)和物理結(jié)構(gòu)物理結(jié)構(gòu)。Oracle 9i 的體系結(jié)構(gòu)16Oracle數(shù)據(jù)庫數(shù)據(jù)庫表空間表空間邏輯對象(表、視圖等)邏輯對象(表、視圖等)數(shù)據(jù)區(qū)間數(shù)據(jù)區(qū)間索引段索引段數(shù)據(jù)段數(shù)據(jù)段數(shù)據(jù)塊數(shù)據(jù)塊數(shù)據(jù)塊數(shù)據(jù)塊物理文件物理文件物理塊物理塊索引區(qū)間索引區(qū)間NNNNN1111邏輯結(jié)構(gòu)物理結(jié)構(gòu)N1N1OracleOracle數(shù)據(jù)庫基本結(jié)構(gòu)數(shù)據(jù)庫基本結(jié)構(gòu)17邏輯結(jié)構(gòu)n邏輯結(jié)構(gòu)主要是從數(shù)據(jù)庫使用者的角度考查數(shù)據(jù)庫的組成。邏輯結(jié)構(gòu)主要是從數(shù)據(jù)庫使用者的角度考查數(shù)據(jù)庫的組成。Oracle 數(shù)據(jù)庫表空間視

11、圖索引表回滾段臨時段索引段數(shù)據(jù)段數(shù)據(jù)段數(shù)據(jù)區(qū)段數(shù)據(jù)塊表空間表空間數(shù)據(jù)區(qū)段數(shù)據(jù)塊數(shù)據(jù)庫表空間邏輯對象數(shù)據(jù)區(qū)間數(shù)據(jù)段數(shù)據(jù)塊18ORACLEORACLE的邏輯結(jié)構(gòu)的邏輯結(jié)構(gòu)nORACLEORACLE的邏輯結(jié)構(gòu)是由一個或多個表空間組成。的邏輯結(jié)構(gòu)是由一個或多個表空間組成。n 一個數(shù)據(jù)庫由若干個表空間組成一個數(shù)據(jù)庫由若干個表空間組成n 一個表空間由邏輯對象組成一個表空間由邏輯對象組成 n 一個邏輯對象由多個數(shù)據(jù)段組成一個邏輯對象由多個數(shù)據(jù)段組成 n 一個數(shù)據(jù)段由一批數(shù)據(jù)區(qū)間組成一個數(shù)據(jù)段由一批數(shù)據(jù)區(qū)間組成 n 一個數(shù)據(jù)區(qū)間由若干個連續(xù)的數(shù)據(jù)塊組成一個數(shù)據(jù)區(qū)間由若干個連續(xù)的數(shù)據(jù)塊組成n 一個數(shù)據(jù)庫塊對應(yīng)一

12、個或多個物理塊一個數(shù)據(jù)庫塊對應(yīng)一個或多個物理塊 19數(shù)據(jù)塊n數(shù)據(jù)塊(數(shù)據(jù)塊(Data BlockData Block)是數(shù)據(jù)庫使用的是數(shù)據(jù)庫使用的I/OI/O最小單元,又稱邏輯塊或最小單元,又稱邏輯塊或ORACLEORACLE塊。常用大小為塊。常用大小為2KB2KB或者或者4KB4KB(是(是OSOS塊的倍塊的倍數(shù))。數(shù))。 n一個數(shù)據(jù)庫塊對應(yīng)一個或多個物理塊,塊的大小由一個數(shù)據(jù)庫塊對應(yīng)一個或多個物理塊,塊的大小由參數(shù)參數(shù)DB_BLOCK_SIZEDB_BLOCK_SIZE確定。確定。( init.ora )init.ora ) 20n區(qū)間(區(qū)間(ExtentExtent)是數(shù)據(jù)庫存儲空間分配

13、的邏輯單是數(shù)據(jù)庫存儲空間分配的邏輯單位,一個區(qū)間由一組數(shù)據(jù)塊組成,區(qū)間是由段分位,一個區(qū)間由一組數(shù)據(jù)塊組成,區(qū)間是由段分配的,分配的第一個區(qū)間稱配的,分配的第一個區(qū)間稱初始區(qū)間初始區(qū)間,以后分配,以后分配的區(qū)間稱的區(qū)間稱增量區(qū)間增量區(qū)間。n段(段(SegmentSegment)是表空間中一個指定類型的邏輯存是表空間中一個指定類型的邏輯存儲結(jié)構(gòu),它由一個或多個區(qū)間組成,段將占用并儲結(jié)構(gòu),它由一個或多個區(qū)間組成,段將占用并增長存儲空間。增長存儲空間。21回滾段回滾段 (Rollback Segment)存儲為讀一致存儲為讀一致 性、回滾或恢性、回滾或恢 復(fù)用數(shù)據(jù)復(fù)用數(shù)據(jù)臨時段臨時段 (Tempor

14、ary Segment)存儲排序操作存儲排序操作 期間建立的臨期間建立的臨 時表的數(shù)據(jù)時表的數(shù)據(jù)索引段索引段 (Index Segment)存儲索引存儲索引的所有數(shù)據(jù)的所有數(shù)據(jù)段的分類段的分類 數(shù)據(jù)段數(shù)據(jù)段 (Data SegmentData Segment)存儲表存儲表的所有數(shù)據(jù)的所有數(shù)據(jù)ORACLEORACLE的邏輯結(jié)構(gòu)的邏輯結(jié)構(gòu) 段段 22n表空間表空間(Table spaces)(Table spaces) 是數(shù)據(jù)庫的邏輯組成部分,對應(yīng)一個或多個數(shù)據(jù)文件,表空間的大小是它所對應(yīng)的數(shù)據(jù)文件大小的總和。一個表空間表空間只能同時屬于一個database。一個表空間表空間可能包含一個或多個段,

15、但段不能跨越表空間表空間; 23物理結(jié)構(gòu)n 數(shù)據(jù)文件數(shù)據(jù)文件 n 日志文件日志文件 n 控制文件控制文件 n 參數(shù)文件參數(shù)文件24數(shù)據(jù)文件n數(shù)據(jù)文件(數(shù)據(jù)文件(Data FileData File)用于物理存儲ORACLE數(shù)據(jù)庫數(shù)據(jù)數(shù)據(jù),如:系統(tǒng)數(shù)據(jù)、用戶數(shù)據(jù)等。其特點如下:每一個數(shù)據(jù)文件只與一個數(shù)據(jù)庫相聯(lián)系。每一個數(shù)據(jù)文件只與一個數(shù)據(jù)庫相聯(lián)系。在在oracleoracle數(shù)據(jù)庫中,至少要包含一個數(shù)據(jù)文件。數(shù)據(jù)庫中,至少要包含一個數(shù)據(jù)文件。 當(dāng)數(shù)據(jù)庫空間不足時,數(shù)據(jù)文件具有自動擴展的特性。當(dāng)數(shù)據(jù)庫空間不足時,數(shù)據(jù)文件具有自動擴展的特性。一個或者多個數(shù)據(jù)文件構(gòu)成數(shù)據(jù)庫的邏輯存儲單元叫做一個或者多

16、個數(shù)據(jù)文件構(gòu)成數(shù)據(jù)庫的邏輯存儲單元叫做表空間表空間(table space).(table space). 數(shù)據(jù)庫表空間邏輯數(shù)據(jù)文件物理25物理結(jié)構(gòu)n數(shù)據(jù)庫文件或數(shù)據(jù)文件它們是物理操作系統(tǒng)文件,它們包括諸如用戶數(shù)據(jù)、系統(tǒng)數(shù)據(jù)等所有數(shù)據(jù)庫數(shù)據(jù)數(shù)據(jù)文件中的數(shù)據(jù)以塊為單位任何數(shù)據(jù)庫創(chuàng)建時至少包含一個數(shù)據(jù)文件26重做日志文件n重做日志文件(重做日志文件(ReDo Log FileReDo Log File)記錄所有對數(shù)記錄所有對數(shù)據(jù)庫數(shù)據(jù)的修改,以備恢復(fù)數(shù)據(jù)時使用。其特?fù)?jù)庫數(shù)據(jù)的修改,以備恢復(fù)數(shù)據(jù)時使用。其特點如下:點如下: 每一個數(shù)據(jù)庫包含多個日志文件。每一個數(shù)據(jù)庫包含多個日志文件。 日志文件以循環(huán)

17、方式進(jìn)行寫操作。日志文件以循環(huán)方式進(jìn)行寫操作。 每一個日志文件成員對應(yīng)一個物理文件。每一個日志文件成員對應(yīng)一個物理文件。工作模式為:歸檔模式和非歸檔模式工作模式為:歸檔模式和非歸檔模式27n日志切換(日志切換(Log SwitchLog Switch)是為實現(xiàn)日志文件是為實現(xiàn)日志文件的循環(huán)使用而設(shè)置的。的循環(huán)使用而設(shè)置的。n出現(xiàn)日志切換的情況如下:出現(xiàn)日志切換的情況如下:當(dāng)一個日志文件被填滿時當(dāng)一個日志文件被填滿時 關(guān)閉數(shù)據(jù)庫時關(guān)閉數(shù)據(jù)庫時 DBADBA手動轉(zhuǎn)移日志開關(guān)手動轉(zhuǎn)移日志開關(guān)28日志文件寫操作圖示日志文件寫操作圖示Log File 1 Log File 2 Member 2.1 Me

18、mber 1.1 29參數(shù)文件n參數(shù)文件(參數(shù)文件(Parameter FileParameter File)是一個文本文件,可直接是一個文本文件,可直接使用操作系統(tǒng)下的文本編輯器對其內(nèi)容進(jìn)行修改。該文件只使用操作系統(tǒng)下的文本編輯器對其內(nèi)容進(jìn)行修改。該文件只在建立數(shù)據(jù)庫或啟動實例時才被訪問,在建立數(shù)據(jù)庫或啟動實例時才被訪問,在修改該文件之前必在修改該文件之前必須關(guān)閉實例。須關(guān)閉實例。初始參數(shù)文件初始參數(shù)文件:init.ora init.ora 生成參數(shù)文件:生成參數(shù)文件:initinitSIDSID.ora.ora config.oraconfig.ora任意一個實例都對應(yīng)一個初始化文件任意一

19、個實例都對應(yīng)一個初始化文件init.ora,init.ora,它決定實例它決定實例的大小及組成參數(shù)的大小及組成參數(shù). .30參數(shù)文件的作用n 確定存儲結(jié)構(gòu)的大小。確定存儲結(jié)構(gòu)的大小。 n 設(shè)置數(shù)據(jù)庫的全部缺省值。設(shè)置數(shù)據(jù)庫的全部缺省值。 n 設(shè)置數(shù)據(jù)庫的區(qū)間。設(shè)置數(shù)據(jù)庫的區(qū)間。 n 設(shè)置數(shù)據(jù)庫的各種物理屬性。設(shè)置數(shù)據(jù)庫的各種物理屬性。 n 優(yōu)化數(shù)據(jù)庫性能。優(yōu)化數(shù)據(jù)庫性能。31Parameter filesn在參數(shù)文件中包括大量影響Oracle數(shù)據(jù)庫實例功能的設(shè)置。 。數(shù)據(jù)庫控制文件的定位 。Oracle用來緩存從磁盤上讀取的數(shù)據(jù)的內(nèi)存數(shù)量 。Oracle 用來緩存SQL語句的執(zhí)行計劃,PL/S

20、QL過程和數(shù)據(jù)字典信息以便與它們不必從磁盤連續(xù)讀取的內(nèi)存的數(shù)量 。默認(rèn)的優(yōu)化程序的選擇32Parameter files n和數(shù)據(jù)庫文件相關(guān),執(zhí)行兩個重要的功能:1為數(shù)據(jù)庫指出控制文件2為數(shù)據(jù)庫指出歸檔日志的目標(biāo)33n參數(shù)文件中參數(shù)的數(shù)據(jù)類型: 整型參數(shù) n 例:DB_BLOCK_SIZE = 2048 -數(shù)據(jù)塊大小字符型參數(shù)n 例:DB_NAME = ora9 -數(shù)據(jù)庫名稱34控制文件n控制文件(控制文件(Control FileControl File)是一個較小的二進(jìn)制文件,用于記錄和維護(hù)數(shù)據(jù)庫的物理結(jié)構(gòu)。描述信息如下:描述信息如下: 數(shù)據(jù)庫名稱及創(chuàng)建時間。數(shù)據(jù)庫名稱及創(chuàng)建時間。 數(shù)據(jù)文

21、件的位置及大小。數(shù)據(jù)文件的位置及大小。 重做日志文件的位置及大小。重做日志文件的位置及大小。 日志序列號。日志序列號。要點注意:要點注意: 在打開和存取數(shù)據(jù)庫時都訪問在打開和存取數(shù)據(jù)庫時都訪問該文件。該文件。數(shù)據(jù)庫至少包含一個控制文件。數(shù)據(jù)庫至少包含一個控制文件。 鏡像控制文件。鏡像控制文件。 記錄控制文件名及路徑的參數(shù)記錄控制文件名及路徑的參數(shù)為:為: CONTROL_FILESCONTROL_FILES 35Control filen控制文件把Oracle引導(dǎo)到數(shù)據(jù)庫文件的其它部分。啟動一個實例時,Oracle 從參數(shù)文件中讀取控制文件的名字和位置。安裝數(shù)據(jù)庫時,Oracle 打開控制文件

22、。最終打開數(shù)據(jù)庫時,Oracle 從控制文件中讀取數(shù)據(jù)文件的列表并打開其中的每個文件。36 參數(shù)文件參數(shù)文件控制文件控制文件控制文件控制文件日志文件日志文件日志文件日志文件數(shù)據(jù)文件數(shù)據(jù)文件數(shù)據(jù)文件數(shù)據(jù)文件每個控制文件的每個控制文件的內(nèi)容是完全相同內(nèi)容是完全相同指向控制文件指向控制文件控制文件指向數(shù)據(jù)和日志文件控制文件指向數(shù)據(jù)和日志文件37體系結(jié)構(gòu)n物理結(jié)構(gòu)物理結(jié)構(gòu) 數(shù)據(jù)文件、日志文件、控制文件、參數(shù)文件 n系統(tǒng)全局區(qū)(系統(tǒng)全局區(qū)(System Global Area) 共享池、數(shù)據(jù)緩沖區(qū)、日志緩沖區(qū) n進(jìn)進(jìn) 程程 用戶進(jìn)程、服務(wù)器進(jìn)程、后臺進(jìn)程 38Oracle 9i的內(nèi)存結(jié)構(gòu)n使用計算機的內(nèi)

23、存存放常用的信息和所有調(diào)度運行的程序。n系統(tǒng)全局區(qū)(SGA):由所有用戶進(jìn)程共享的一塊內(nèi)存區(qū)域。數(shù)據(jù)緩沖區(qū):存儲最近從數(shù)據(jù)庫中讀取出來的數(shù)據(jù)塊重做日志緩沖區(qū):記錄事務(wù)共享池:程序高速緩沖區(qū)。n程序全局區(qū)(PGA)排序區(qū)會話信息堆棧空間39數(shù)據(jù)緩沖區(qū)數(shù)據(jù)緩沖區(qū)數(shù)據(jù)緩沖區(qū)(數(shù)據(jù)緩沖區(qū)(Database Buffer Cache)用于存儲最近從數(shù)據(jù)庫中讀取出來的數(shù)據(jù)塊。數(shù)據(jù)緩沖區(qū) 數(shù)據(jù)文件 DB_BLOCK_SIZE 確定數(shù)據(jù)塊的大小,一般為2K或4K,對于大數(shù)據(jù)塊的數(shù)據(jù)庫,此參數(shù)值為物理塊的倍數(shù)。 DB_nK_CACHE_SIZE 定義非標(biāo)準(zhǔn)數(shù)據(jù)塊的大小。 40 重做日志緩沖區(qū)(重做日志緩沖區(qū)(R

24、edo Log Redo Log BufferBuffer)是由一條條重做記錄組成,每條記錄記載了被修改數(shù)據(jù)塊的位置和變化后的數(shù)據(jù)。 LOG_BUFFER 確定日志緩沖區(qū)的大小。 日志緩沖區(qū) 日志文件 41n共享池:共享池:SQLSQL程序的高速緩沖區(qū)程序的高速緩沖區(qū)存放的是所有通過存放的是所有通過SQLSQL語法分析并準(zhǔn)備執(zhí)行語法分析并準(zhǔn)備執(zhí)行的的SQLSQL語句語句主要由庫高速緩存和數(shù)據(jù)字典高速緩存組成主要由庫高速緩存和數(shù)據(jù)字典高速緩存組成nSHARED_POOL_SIZE定義其大小42Oracle 9i的進(jìn)程結(jié)構(gòu)n用戶進(jìn)程:向服務(wù)器進(jìn)程提出操作請求用戶進(jìn)程:向服務(wù)器進(jìn)程提出操作請求當(dāng)用戶

25、運行一個應(yīng)用程序時,就建立一個用戶進(jìn)程。當(dāng)用戶運行一個應(yīng)用程序時,就建立一個用戶進(jìn)程。n后臺進(jìn)程:多進(jìn)程系統(tǒng)中,使用的一些附加進(jìn)后臺進(jìn)程:多進(jìn)程系統(tǒng)中,使用的一些附加進(jìn)程程為所有數(shù)據(jù)庫用戶異步完成各種事務(wù)。為所有數(shù)據(jù)庫用戶異步完成各種事務(wù)。n服務(wù)器進(jìn)程:接受用戶進(jìn)程發(fā)出的請求并完成服務(wù)器進(jìn)程:接受用戶進(jìn)程發(fā)出的請求并完成其相應(yīng)的操作。其相應(yīng)的操作。服務(wù)器進(jìn)程主要包括:分析、優(yōu)化和執(zhí)行服務(wù)器進(jìn)程主要包括:分析、優(yōu)化和執(zhí)行SQLSQL語句,將硬盤數(shù)語句,將硬盤數(shù)據(jù)讀到系統(tǒng)全局區(qū)(據(jù)讀到系統(tǒng)全局區(qū)(SGASGA),將),將SQLSQL語句的結(jié)果返回給用戶進(jìn)程,語句的結(jié)果返回給用戶進(jìn)程,完成系統(tǒng)的維護(hù)

26、等。完成系統(tǒng)的維護(hù)等。43后臺進(jìn)程主要的后臺進(jìn)程有主要的后臺進(jìn)程有 DBWR (Database Writer) DBWR (Database Writer) 數(shù)據(jù)庫寫進(jìn)程數(shù)據(jù)庫寫進(jìn)程 LGWR (Log Writer) LGWR (Log Writer) 日志寫進(jìn)程日志寫進(jìn)程 CKPTCKPT(Checkpoint processCheckpoint process)檢查點寫進(jìn)程)檢查點寫進(jìn)程 SMONSMON(System MonitorSystem Monitor) 系統(tǒng)監(jiān)控進(jìn)程系統(tǒng)監(jiān)控進(jìn)程 PMONPMON(Process MonitorProcess Monitor) 進(jìn)程監(jiān)控進(jìn)程進(jìn)

27、程監(jiān)控進(jìn)程 ARCHARCH(Archive ProcessArchive Process) 歸檔進(jìn)程歸檔進(jìn)程 RECO RECO 恢復(fù)進(jìn)程恢復(fù)進(jìn)程 LCKn LCKn 封鎖進(jìn)程封鎖進(jìn)程44nDBWR(Database Writer) 將數(shù)據(jù)緩沖區(qū)中所有修改過的緩沖塊數(shù)將數(shù)據(jù)緩沖區(qū)中所有修改過的緩沖塊數(shù)據(jù)寫到數(shù)據(jù)文件中,并使用據(jù)寫到數(shù)據(jù)文件中,并使用LRULRU算法算法(最近最少使用算法)來保持緩沖區(qū)中(最近最少使用算法)來保持緩沖區(qū)中的數(shù)據(jù)塊為最近使用的,以減少的數(shù)據(jù)塊為最近使用的,以減少I/OI/O次次數(shù)。該進(jìn)程在啟動實例時自動啟動。數(shù)。該進(jìn)程在啟動實例時自動啟動。通過設(shè)置通過設(shè)置DB_W

28、riter_processesDB_Writer_processes定定DBWRDBWR個數(shù)。個數(shù)。45nLGWR(Log Writer) 將日志緩沖區(qū)中的所有記錄項寫到日志文件中。將日志緩沖區(qū)中的所有記錄項寫到日志文件中。 該進(jìn)程在啟動實例時自動啟動。該進(jìn)程在啟動實例時自動啟動。LGWRLGWR進(jìn)行寫操作的情況:進(jìn)行寫操作的情況: n用戶進(jìn)程提交一個事務(wù)(用戶進(jìn)程提交一個事務(wù)(CommitCommit) n重做日志緩沖區(qū)達(dá)到重做日志緩沖區(qū)達(dá)到1/31/3區(qū)間區(qū)間 n在在DBWRDBWR進(jìn)程將臟緩沖區(qū)寫入到數(shù)據(jù)文件之前進(jìn)程將臟緩沖區(qū)寫入到數(shù)據(jù)文件之前 n出現(xiàn)超時(出現(xiàn)超時(3 3秒鐘內(nèi)未活動,

29、則進(jìn)行一次寫操作。)秒鐘內(nèi)未活動,則進(jìn)行一次寫操作。)nOracle總是總是“先日志后修改先日志后修改”。46n檢查點(檢查點(Checkpoint) : 在檢查點出現(xiàn)期間,在檢查點出現(xiàn)期間,DBWRDBWR進(jìn)程將數(shù)據(jù)緩沖區(qū)進(jìn)程將數(shù)據(jù)緩沖區(qū)中的所有臟緩沖塊寫到數(shù)據(jù)文件中,中的所有臟緩沖塊寫到數(shù)據(jù)文件中,LGWRLGWR將將日志緩沖區(qū)中的所有記錄項寫到日志文件中,日志緩沖區(qū)中的所有記錄項寫到日志文件中,以確保上一個檢查點至今修改過的所有數(shù)據(jù)以確保上一個檢查點至今修改過的所有數(shù)據(jù)塊都被寫到磁盤上塊都被寫到磁盤上。47nCKPT(Checkpointer) 在控制文件中記錄檢查點。參數(shù)在控制文件中記

30、錄檢查點。參數(shù)CHECKPOINT_PROCESS CHECKPOINT_PROCESS 確定了檢查點的啟動確定了檢查點的啟動/ /不啟動不啟動狀態(tài)。狀態(tài)。 若若CKPTCKPT進(jìn)程不啟動,則該進(jìn)程的工作將由進(jìn)程不啟動,則該進(jìn)程的工作將由LGWRLGWR進(jìn)程進(jìn)程代勞。(如果數(shù)據(jù)庫的數(shù)據(jù)文件過多,這樣操作會代勞。(如果數(shù)據(jù)庫的數(shù)據(jù)文件過多,這樣操作會降低系統(tǒng)性能。)降低系統(tǒng)性能。)其進(jìn)程主要用于同步數(shù)據(jù)庫的數(shù)據(jù)文件、控制文件其進(jìn)程主要用于同步數(shù)據(jù)庫的數(shù)據(jù)文件、控制文件和重做日志。和重做日志。檢查點進(jìn)程檢查點進(jìn)程CKPT48SMON進(jìn)程n用于執(zhí)行例程恢復(fù)、合并空間碎片并釋放臨時用于執(zhí)行例程恢復(fù)、合并空間碎片并釋放臨時段段n主要包括:主要包括:REDO打開數(shù)據(jù)庫打開數(shù)據(jù)庫UNDO49PMON進(jìn)程n監(jiān)視服務(wù)器進(jìn)程的執(zhí)行,并且在服務(wù)器進(jìn)程失監(jiān)視服務(wù)器進(jìn)程的執(zhí)行,并且在服務(wù)器

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論