Oracle數(shù)據(jù)庫(kù)系統(tǒng)及應(yīng)用第2章 Oracle的體系結(jié)構(gòu)_第1頁(yè)
Oracle數(shù)據(jù)庫(kù)系統(tǒng)及應(yīng)用第2章 Oracle的體系結(jié)構(gòu)_第2頁(yè)
Oracle數(shù)據(jù)庫(kù)系統(tǒng)及應(yīng)用第2章 Oracle的體系結(jié)構(gòu)_第3頁(yè)
Oracle數(shù)據(jù)庫(kù)系統(tǒng)及應(yīng)用第2章 Oracle的體系結(jié)構(gòu)_第4頁(yè)
Oracle數(shù)據(jù)庫(kù)系統(tǒng)及應(yīng)用第2章 Oracle的體系結(jié)構(gòu)_第5頁(yè)
已閱讀5頁(yè),還剩28頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

第2章Oracle的體系結(jié)構(gòu)南京信息工程大學(xué)計(jì)算機(jī)與軟件學(xué)院教學(xué)目的與要求(1)理解Oracle體系結(jié)構(gòu)有關(guān)概念;(2)掌握Oracle數(shù)據(jù)庫(kù)的邏輯存儲(chǔ)結(jié)構(gòu)和物理存儲(chǔ)結(jié)構(gòu);(3)掌握Oracle實(shí)例的內(nèi)存結(jié)構(gòu)和進(jìn)程結(jié)構(gòu);(4)理解Oracle數(shù)據(jù)庫(kù)中數(shù)據(jù)字典的作用。2.1Oracle體系結(jié)構(gòu)概述2.2邏輯存儲(chǔ)結(jié)構(gòu)2.3物理存儲(chǔ)結(jié)構(gòu)2.4實(shí)例的內(nèi)存結(jié)構(gòu)2.5實(shí)例的進(jìn)程結(jié)構(gòu)2.6數(shù)據(jù)字典本章主要內(nèi)容教學(xué)重點(diǎn)與難點(diǎn)(1)Oracle實(shí)例概念的理解(2)邏輯存儲(chǔ)結(jié)構(gòu)和物理存儲(chǔ)結(jié)構(gòu)及其之間的關(guān)系(3)Oracle實(shí)例的內(nèi)存結(jié)構(gòu)和進(jìn)程結(jié)構(gòu)2.1Oracle體系結(jié)構(gòu)概述(1)有關(guān)概念完整的Oracle數(shù)據(jù)庫(kù)系統(tǒng)通常由兩個(gè)部分組成:實(shí)例(INSTANCE)和數(shù)據(jù)庫(kù)(DATABASE)。數(shù)據(jù)庫(kù)是一系列物理文件的集合(數(shù)據(jù)文件,控制文件,聯(lián)機(jī)日志,參數(shù)文件等);實(shí)例則是由一組Oracle后臺(tái)進(jìn)程/線程以及在服務(wù)器分配的共享內(nèi)存區(qū)。關(guān)系:數(shù)據(jù)庫(kù)可以由多個(gè)實(shí)例裝載和打開(kāi),而實(shí)例可以在任何時(shí)間裝載和打開(kāi)一個(gè)數(shù)據(jù)庫(kù)。啟動(dòng)Oracle數(shù)據(jù)庫(kù)服務(wù)器時(shí),實(shí)際上是在服務(wù)器的內(nèi)存中創(chuàng)建一個(gè)Oracle實(shí)例。(2)處理請(qǐng)求的方式專用服務(wù)器連接為每個(gè)用戶請(qǐng)求分配一個(gè)專用服務(wù)器進(jìn)程,當(dāng)用戶請(qǐng)求結(jié)束后,對(duì)應(yīng)的服務(wù)器進(jìn)程也被終止。(需要有與用戶請(qǐng)求同等數(shù)量的服務(wù)器進(jìn)程)共享服務(wù)器連接始終保持一定數(shù)量的服務(wù)器進(jìn)程,用戶的請(qǐng)求由一個(gè)稱為“調(diào)度程序”的特殊服務(wù)進(jìn)程為其分配一個(gè)服務(wù)器進(jìn)程。(使用很少的服務(wù)器進(jìn)程為多個(gè)用戶請(qǐng)求提供服務(wù))(3)Oracle的存儲(chǔ)結(jié)構(gòu)邏輯存儲(chǔ)結(jié)構(gòu)用于描述Oracle內(nèi)部組織和管理數(shù)據(jù)的方式。物理存儲(chǔ)結(jié)構(gòu)

用于描述Oracle外部即操作系統(tǒng)中組織和管理數(shù)據(jù)的方式。2.2邏輯存儲(chǔ)結(jié)構(gòu)

數(shù)據(jù)庫(kù)的邏輯結(jié)構(gòu)是從邏輯的角度分析數(shù)據(jù)庫(kù)的構(gòu)成,即創(chuàng)建數(shù)據(jù)庫(kù)后形成的邏輯概念之間的關(guān)系。在邏輯上,Oracle將保存的數(shù)據(jù)劃分為一個(gè)個(gè)小單元來(lái)進(jìn)行存儲(chǔ)和維護(hù),高一級(jí)的存儲(chǔ)單元由一個(gè)或多個(gè)低一級(jí)的存儲(chǔ)單元組成。2.2.1數(shù)據(jù)塊

數(shù)據(jù)塊是Oracle用來(lái)管理存儲(chǔ)空間的最小單元,也是執(zhí)行數(shù)據(jù)庫(kù)輸入輸出操作時(shí)的最小單位。相對(duì)應(yīng)地,操作系統(tǒng)執(zhí)行輸入輸出操作的最小單位為一個(gè)操作系統(tǒng)塊的大小。在操作系統(tǒng)中,執(zhí)行I/O操作是以操作系統(tǒng)塊為單位,而在Oracle中,執(zhí)行的I/O操作以O(shè)racle數(shù)據(jù)塊為單位。

Oracle數(shù)據(jù)塊的大小是操作系統(tǒng)塊的整數(shù)倍。數(shù)據(jù)塊的標(biāo)準(zhǔn)大小由初始化參數(shù)DB_BLOCK_SIZE確定。具有標(biāo)準(zhǔn)大小的塊被稱為標(biāo)準(zhǔn)塊,與標(biāo)準(zhǔn)塊大小不同的塊稱為非標(biāo)準(zhǔn)塊。(Oracle支持在同一個(gè)數(shù)據(jù)庫(kù)中使用多種大小的塊)塊頭部表目錄行目錄空閑空間行空間頭部信息區(qū)存儲(chǔ)區(qū)2.2.2盤(pán)區(qū)

盤(pán)區(qū)是由一系列物理上連續(xù)存放的數(shù)據(jù)塊所構(gòu)成的Oracle存儲(chǔ)結(jié)構(gòu),由一個(gè)或多個(gè)數(shù)據(jù)塊組成一個(gè)盤(pán)區(qū),而一個(gè)或多個(gè)盤(pán)區(qū)組成一個(gè)段。當(dāng)一個(gè)段中的所有空間被使用完后,系統(tǒng)將自動(dòng)為該段分配一個(gè)新的盤(pán)區(qū)。盤(pán)區(qū)是Oracle存儲(chǔ)分配的最小單位。2.2.3段

段是由一系列盤(pán)區(qū)組成的,它不再是存儲(chǔ)空間的分配單位,而是一個(gè)獨(dú)立的邏輯存儲(chǔ)結(jié)構(gòu)。對(duì)于具有獨(dú)立存儲(chǔ)結(jié)構(gòu)的對(duì)象,它的數(shù)據(jù)全部存儲(chǔ)在保存它的段中。一個(gè)段只屬于一個(gè)特定的數(shù)據(jù)庫(kù)對(duì)象,每當(dāng)創(chuàng)建一個(gè)具有獨(dú)立段的數(shù)據(jù)庫(kù)對(duì)象時(shí),Oracle將為它創(chuàng)建一個(gè)段。根據(jù)段中存放的數(shù)據(jù)庫(kù)對(duì)象類型,可以將段分為五種類型:數(shù)據(jù)段、索引段、臨時(shí)段、回退段和LOB段。2.2.4表空間

表空間是在Oracle中用戶可以使用的最大的邏輯存儲(chǔ)結(jié)構(gòu),用戶在數(shù)據(jù)庫(kù)中建立的所有內(nèi)容都被存儲(chǔ)在表空間中。Oracle使用表空間將相關(guān)的邏輯結(jié)構(gòu)組合在一起,表空間在物理上與數(shù)據(jù)文件相對(duì)應(yīng),每一個(gè)表空間由一個(gè)或多個(gè)數(shù)據(jù)文件組成的,一個(gè)數(shù)據(jù)文件只可以屬于一個(gè)表空間。

在創(chuàng)建數(shù)據(jù)庫(kù)時(shí),Oracle會(huì)自動(dòng)創(chuàng)建一些默認(rèn)的表空間,除了用于存儲(chǔ)用戶數(shù)據(jù)的普通表空間外,還會(huì)存在3種類型的表空間:SYSTEM表空間、撤銷(xiāo)表空間和臨時(shí)表空間。1.SYSTEM表空間(系統(tǒng)表空間)保存信息:(1)數(shù)據(jù)字典和內(nèi)部系統(tǒng)表基表;(2)PL/SQL程序的源代碼和解析代碼;(3)數(shù)據(jù)庫(kù)對(duì)象的定義。特點(diǎn):(1)系統(tǒng)自動(dòng)創(chuàng)建和維護(hù);(2)大量的讀操作,少量的寫(xiě)操作。SYSAUX表空間:作為SYSTEM表空間的輔助表空間。(10g以后版本)2.撤銷(xiāo)表空間保存信息:撤銷(xiāo)信息(回退信息)特點(diǎn):(1)只包含撤銷(xiāo)段(回退段);(2)大量的寫(xiě)操作,少量的讀操作;(3)使用DBCA創(chuàng)建數(shù)據(jù)庫(kù)時(shí),會(huì)自動(dòng)創(chuàng)建一個(gè)默認(rèn)的撤銷(xiāo)表空間UNDOTBS;(4)DBA可以為數(shù)據(jù)庫(kù)創(chuàng)建多個(gè)撤銷(xiāo)表空間,但每個(gè)數(shù)據(jù)庫(kù)實(shí)例最多只能使用一個(gè)撤銷(xiāo)表空間。3.臨時(shí)表空間保存信息:SQL語(yǔ)句在執(zhí)行過(guò)程中所產(chǎn)生的臨時(shí)數(shù)據(jù)特點(diǎn):(1)使用DBCA創(chuàng)建數(shù)據(jù)庫(kù)時(shí),會(huì)自動(dòng)創(chuàng)建默認(rèn)的臨時(shí)表空間TEMP;(2)用戶可以創(chuàng)建其他的臨時(shí)表空間;(3)同一個(gè)實(shí)例中的所有SQL語(yǔ)句的排序操作共享一個(gè)排序段。2.3物理存儲(chǔ)結(jié)構(gòu)

從整體上看,Oracle的數(shù)據(jù)在邏輯上存儲(chǔ)在表空間中,而物理上存儲(chǔ)在表空間所對(duì)應(yīng)的數(shù)據(jù)文件中。主要包括3類物理文件:數(shù)據(jù)文件、控制文件和重做日志文件。2.3.1數(shù)據(jù)文件

數(shù)據(jù)庫(kù)中的數(shù)據(jù)在物理上保存在若干個(gè)操作系統(tǒng)文件中,這些操作系統(tǒng)文件就是數(shù)據(jù)文件。一個(gè)表空間在物理上對(duì)應(yīng)一個(gè)或多個(gè)數(shù)據(jù)文件,而一個(gè)數(shù)據(jù)文件只能屬于一個(gè)表空間。在為數(shù)據(jù)庫(kù)創(chuàng)建表空間時(shí),Oracle將同時(shí)創(chuàng)建對(duì)應(yīng)的數(shù)據(jù)文件。在表空間中創(chuàng)建數(shù)據(jù)庫(kù)對(duì)象時(shí),只能由Oracle負(fù)責(zé)為該對(duì)象選擇一個(gè)數(shù)據(jù)文件。三種增加存儲(chǔ)空間的方式:(1)為表空間追加新的數(shù)據(jù)文件;(2)通過(guò)手工方式擴(kuò)大現(xiàn)有的數(shù)據(jù)文件;(3)配置數(shù)據(jù)文件為自動(dòng)增長(zhǎng)方式。數(shù)據(jù)文件類型:系統(tǒng)數(shù)據(jù)文件撤銷(xiāo)段文件用戶數(shù)據(jù)文件臨時(shí)數(shù)據(jù)文件2.3.2控制文件

數(shù)據(jù)庫(kù)控制文件是一個(gè)很小的二進(jìn)制文件,在其中包含了關(guān)于數(shù)據(jù)庫(kù)物理結(jié)構(gòu)的重要信息(如數(shù)據(jù)庫(kù)名稱、檢查點(diǎn)信息、數(shù)據(jù)庫(kù)創(chuàng)建的時(shí)間戳、所有的數(shù)據(jù)文件、重做日志文件、歸檔日志文件信息、備份信息等)。通過(guò)在加載數(shù)據(jù)庫(kù)時(shí)讀取控制文件,Oracle才能找到自己所需的操作系統(tǒng)文件(數(shù)據(jù)文件、重做日志文件等)??刂莆募?duì)于數(shù)據(jù)庫(kù)的成功啟動(dòng)和正常運(yùn)行至關(guān)重要。必須在整個(gè)數(shù)據(jù)庫(kù)打開(kāi)期間始終保持可用狀態(tài)。

注意:(1)每個(gè)數(shù)據(jù)庫(kù)可以擁有多個(gè)控制文件(至少一個(gè)),但一個(gè)控制文件只能屬于一個(gè)數(shù)據(jù)庫(kù);(2)控制文件中的內(nèi)容只能由Oracle來(lái)修改。2.3.3其他文件

歸檔日志文件

參數(shù)文件

密碼文件

預(yù)警日志文件

后臺(tái)或用戶跟蹤文件2.4實(shí)例的內(nèi)存結(jié)構(gòu)

內(nèi)存結(jié)構(gòu)是Oracle數(shù)據(jù)庫(kù)體系結(jié)構(gòu)中最為重要的部分之一,內(nèi)存也是影響數(shù)據(jù)庫(kù)性能的主要因素。在Oracle數(shù)據(jù)庫(kù)中,服務(wù)器內(nèi)存的大小將直接影響數(shù)據(jù)庫(kù)的運(yùn)行速度。實(shí)例的內(nèi)存結(jié)構(gòu)可以分為兩部分:系統(tǒng)全局區(qū)(SystemGlobalArea,SGA)和程序全局區(qū)(ProgramGlobalArea,PGA)。2.4.1系統(tǒng)全局區(qū)(SGA)SGA位于系統(tǒng)的共享內(nèi)存段中,它是由所有用戶進(jìn)程共享的一塊內(nèi)存區(qū)域(其中的數(shù)據(jù)可以被所有的服務(wù)和后臺(tái)進(jìn)程共享)。在數(shù)據(jù)庫(kù)實(shí)例啟動(dòng)時(shí),SGA的內(nèi)存被自動(dòng)分配;當(dāng)數(shù)據(jù)庫(kù)實(shí)例關(guān)閉時(shí),SGA被回收。

SGA區(qū)中的主要包含如下內(nèi)存結(jié)構(gòu):數(shù)據(jù)緩存區(qū)、共享池、重做日志緩存、Java池和大型池等結(jié)構(gòu)。2.4.2程序全局區(qū)(PGA)PGA是保存某個(gè)特定服務(wù)進(jìn)程的數(shù)據(jù)和控制信息的非共享的內(nèi)存結(jié)構(gòu),只有服務(wù)進(jìn)程本身才能夠訪問(wèn)它自己的PGA區(qū)。每個(gè)服務(wù)進(jìn)程都有它自己的PGA區(qū),各個(gè)服務(wù)進(jìn)程PGA區(qū)的總和即為實(shí)例的PGA區(qū)的大小。

PGA的內(nèi)容與結(jié)構(gòu)和數(shù)據(jù)庫(kù)的連接模式有關(guān)。一般情況下,PGA都包含私有SQL工作區(qū)和會(huì)話內(nèi)存區(qū)。2.5實(shí)例的進(jìn)程結(jié)構(gòu)

用戶進(jìn)程

服務(wù)器進(jìn)程

后臺(tái)進(jìn)程2.5.1用戶進(jìn)程

用戶進(jìn)程不是實(shí)例的組成部分。

連接是一個(gè)用戶進(jìn)程與數(shù)據(jù)庫(kù)實(shí)例之間的一條通信路徑,這條通信路徑通過(guò)操作系統(tǒng)平臺(tái)中的進(jìn)程間通信機(jī)制或網(wǎng)絡(luò)連接來(lái)實(shí)現(xiàn)。

會(huì)話則是一個(gè)用戶到數(shù)據(jù)庫(kù)的指定連接。例如當(dāng)一個(gè)用戶啟動(dòng)SQL*Plus,并輸入正確的用戶名和密碼連接到一個(gè)數(shù)據(jù)庫(kù)庫(kù)后,就為該用戶創(chuàng)建了一個(gè)會(huì)話。會(huì)話在用戶連接到實(shí)例的過(guò)程中始終存在,直到用戶斷開(kāi)連接或終止應(yīng)用程序?yàn)橹埂?.5.2服務(wù)器進(jìn)程

服務(wù)器進(jìn)程就是代表用戶會(huì)話完成工作的進(jìn)程,應(yīng)用向數(shù)據(jù)庫(kù)發(fā)送的SQL語(yǔ)句就是由這些進(jìn)程接收并執(zhí)行。在Oracle數(shù)據(jù)庫(kù)中可以同時(shí)存在兩種類型的服務(wù)器進(jìn)程:一種類型是專用服務(wù)器進(jìn)程,一個(gè)專用服務(wù)進(jìn)程只能為一個(gè)用戶進(jìn)程提供服務(wù);另一種是共享服務(wù)進(jìn)程,一個(gè)共享服務(wù)進(jìn)程可以為多個(gè)用戶進(jìn)程提供服務(wù)。2.5.3后臺(tái)進(jìn)程O(píng)racle實(shí)例包括兩部分:SGA和一組后臺(tái)進(jìn)程。在任意一個(gè)時(shí)刻,Oracle數(shù)據(jù)庫(kù)可以處理多個(gè)并發(fā)用戶請(qǐng)求,進(jìn)行復(fù)雜的數(shù)據(jù)操作,同時(shí)還要維護(hù)數(shù)據(jù)庫(kù)系統(tǒng)使其始終具有良好的性能。為了完成這些任務(wù),Oracle具有一組后臺(tái)進(jìn)程保證數(shù)據(jù)庫(kù)運(yùn)行所需的實(shí)際維護(hù)任務(wù)。2.6數(shù)據(jù)字典

數(shù)據(jù)字典是Oracle數(shù)據(jù)庫(kù)的核心組件,它是由一系列對(duì)于用戶而言是只讀的基礎(chǔ)表和視圖組成,它保存了關(guān)于數(shù)據(jù)庫(kù)本身以及其中存儲(chǔ)的所有對(duì)象的基本信息。數(shù)據(jù)字典的

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論