freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

第3章oracledatabase的體系結(jié)構(gòu)(編輯修改稿)

2025-02-03 20:15 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 務(wù)時(shí),回滾段中的數(shù)據(jù)將變?yōu)闊o效,這時(shí)用戶將無法回滾該事務(wù)。在數(shù)據(jù)庫(kù)中可以創(chuàng)建多個(gè)回滾段。當(dāng)用戶執(zhí)行 DML操作時(shí),數(shù)據(jù)庫(kù)服務(wù)器將自動(dòng)為當(dāng)前事務(wù)指定一個(gè)回滾段,用戶也可以通過命令指定過一個(gè)回滾段。在創(chuàng)建數(shù)據(jù)庫(kù)時(shí),系統(tǒng)在 SYSTEM表空間中自動(dòng)創(chuàng)建一個(gè) SYSTEM回滾段, SYSTEM回滾段用于維護(hù) Oracle內(nèi)部的事務(wù)。數(shù)據(jù)庫(kù)管理員可以通過命令創(chuàng)建其它的回滾段。 17 3. 區(qū) 區(qū)是 Oracle分配存儲(chǔ)空間的最小單位,一個(gè)段由多個(gè)區(qū)組成,一個(gè)區(qū)由若干個(gè)連續(xù)的數(shù)據(jù)塊組成。區(qū)的大小是數(shù)據(jù)塊大小的整數(shù)倍。當(dāng)在數(shù)據(jù)庫(kù)中創(chuàng)建帶有實(shí)際存儲(chǔ)結(jié)構(gòu)的方案對(duì)象時(shí), Oracle將為該對(duì)象分配若干個(gè)區(qū),以便組成一個(gè)對(duì)應(yīng)的段來為該方案對(duì)象提供初始的存儲(chǔ)空間。當(dāng)段中已分配的區(qū)都寫滿后, Oracle就為該段分配一個(gè)新區(qū),以容納更多的數(shù)據(jù)。 4. 數(shù)據(jù)塊 數(shù)據(jù)塊是 Oracle中的最小存儲(chǔ)單位,也是數(shù)據(jù)庫(kù)服務(wù)器讀寫數(shù)據(jù)的最小邏輯單位。同時(shí)數(shù)據(jù)塊還是執(zhí)行輸入輸出操作的最小單位。操作系統(tǒng)執(zhí)行輸入輸出操作的最小單位是操作系統(tǒng)塊。數(shù)據(jù)庫(kù)的數(shù)據(jù)最終是存儲(chǔ)在硬盤上的,所以數(shù)據(jù)塊與操作系統(tǒng)中的塊有著一定的聯(lián)系。一個(gè)數(shù)據(jù)塊由若干個(gè)操作系統(tǒng)塊組成,它的大小是操作系統(tǒng)塊的整數(shù)倍。 在數(shù)據(jù)塊中可以存儲(chǔ)各種類型的數(shù)據(jù),如表數(shù)據(jù)、索引數(shù)據(jù)等。每個(gè)數(shù)據(jù)塊的基本格式是一樣的,如圖 35所示。 行數(shù)據(jù) 空閑空間 行目錄 表目錄 塊頭部 圖 35 數(shù)據(jù)塊的格式 18 ? 塊頭部 ( header/Common and Variable): 包含數(shù)據(jù)塊的基本信息,如塊的物理地址、塊所在段的類型等。 ? 表目錄 ( Table Directory): 存放表的信息。如果一些表的數(shù)據(jù)被存放在該塊中,那么這些表的相關(guān)信息將被存放在表目錄中。 ? 行目錄 ( Row Directory): 存放了此塊中行數(shù)據(jù)的基本信息,如行的地址等。 ? 空閑空間 ( Free Space): 一個(gè)塊中未使用的區(qū)域,可用于新行的插入和已經(jīng)存在的行的更新。 ? 行數(shù)據(jù) ( Row Data): 是真正存放表數(shù)據(jù)和索引數(shù)據(jù)的地方。該空間是已被數(shù)據(jù)行占用的空間。 ? 頭部信息區(qū) ( Overhead): 塊頭部、表目錄和行目錄這三部分合稱為頭部信息區(qū)。它不存放數(shù)據(jù),存放整個(gè)塊的信息,起到引導(dǎo)系統(tǒng)讀取數(shù)據(jù)的作用。頭部信息區(qū)一旦被損壞,整個(gè)數(shù)據(jù)塊將失效,數(shù)據(jù)塊中存儲(chǔ)的數(shù)據(jù)將丟失。 數(shù)據(jù)塊的標(biāo)準(zhǔn)大小由初始化參數(shù) DB_BLOCK_SIZE指定。數(shù)據(jù)塊的總?cè)萘繉?shí)際就是空間空間和行數(shù)據(jù)的容量的總和。 19 數(shù)據(jù)庫(kù)實(shí)例 對(duì)數(shù)據(jù)庫(kù)的訪問是一個(gè)動(dòng)態(tài)的過程,必須通過數(shù)據(jù)庫(kù)服務(wù)器來進(jìn)行。數(shù)據(jù)庫(kù)服務(wù)器不僅包括數(shù)據(jù)文件,還包括一組用來訪問數(shù)據(jù)文件的內(nèi)存結(jié)構(gòu)和后臺(tái)進(jìn)程。這些內(nèi)存結(jié)構(gòu)和后臺(tái)進(jìn)程稱之為實(shí)例。實(shí)例 Oracle體系結(jié)構(gòu)中最重要的概念,本節(jié)重點(diǎn)闡述實(shí)例,關(guān)于實(shí)例的內(nèi)部存儲(chǔ)結(jié)構(gòu)和后臺(tái)進(jìn)程結(jié)構(gòu)將在下一節(jié)介紹。 Oracle數(shù)據(jù)庫(kù)系統(tǒng)指具有管理 Oracle數(shù)據(jù)庫(kù)功能的計(jì)算機(jī)系統(tǒng)。每一個(gè)運(yùn)行的 Oracle數(shù)據(jù)庫(kù)都對(duì)應(yīng)一個(gè) Oracle實(shí)例( Instance),一個(gè) Oracle實(shí)例為存取和控制數(shù)據(jù)庫(kù)的軟件機(jī)制。當(dāng)數(shù)據(jù)庫(kù)服務(wù)器上的一個(gè)數(shù)據(jù)庫(kù)啟動(dòng)時(shí),Oracle將分配一塊內(nèi)存區(qū)間,叫做系統(tǒng)全局區(qū)( SGA),并啟動(dòng)一個(gè)或多個(gè) Oracle進(jìn)程。因此實(shí)例是一組內(nèi)存結(jié)構(gòu)和后臺(tái)進(jìn)程的集合。 20 用戶訪問數(shù)據(jù)庫(kù)的操作是通過實(shí)例來完成的。實(shí)例通過后臺(tái)進(jìn)程與數(shù)據(jù)庫(kù)中的文件進(jìn)行交互,將用戶修改過得或新增加的數(shù)據(jù)寫入文件,而用戶對(duì)數(shù)據(jù)的所有訪問都是在實(shí)例的內(nèi)存結(jié)構(gòu)中進(jìn)行的。數(shù)據(jù)位于內(nèi)存中,用戶讀寫內(nèi)存的速度要比直接讀寫磁盤快得多,而且內(nèi)存中的數(shù)據(jù)可以在多個(gè)用戶之間共享,故引入實(shí)例在某個(gè)方面可以提高數(shù)據(jù)訪問的并發(fā)性。 當(dāng)數(shù)據(jù)庫(kù)服務(wù)器啟動(dòng)時(shí),首先啟動(dòng)實(shí)例,然后加載并打開數(shù)據(jù)庫(kù)。當(dāng)用戶訪問數(shù)據(jù)庫(kù)時(shí),數(shù)據(jù)庫(kù)服務(wù)器便為用戶進(jìn)程啟動(dòng)一個(gè)服務(wù)器進(jìn)程,負(fù)責(zé)處理用戶進(jìn)程的所有請(qǐng)求,例如將用戶訪問的數(shù)據(jù)從數(shù)據(jù)文件讀到內(nèi)存中。只有數(shù)據(jù)庫(kù)管理員才能啟動(dòng)實(shí)例,并打開數(shù)據(jù)庫(kù)。數(shù)據(jù)庫(kù)被打開后,數(shù)據(jù)庫(kù)管理員可以將數(shù)據(jù)庫(kù)關(guān)閉,此時(shí)用戶就無法訪問數(shù)據(jù)庫(kù)中的數(shù)據(jù)。 為了區(qū)分不同的實(shí)例,每個(gè)實(shí)例都有一個(gè)系統(tǒng)標(biāo)識(shí)符 SID,通常 SID與數(shù)據(jù)庫(kù)同名。每個(gè)服務(wù)器進(jìn)程的命名也與 SID相匹配。 內(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)行速度,特別是多個(gè)用戶連接數(shù)據(jù)庫(kù)時(shí),服務(wù)器必須有足夠的內(nèi)存支持,否則有的用戶可能連接不到服務(wù)器,或查詢速度明顯下降。 21 當(dāng)實(shí)例啟動(dòng)時(shí),系統(tǒng)為實(shí)例分配了一段內(nèi)存空間,并啟動(dòng)若干后臺(tái)進(jìn)程。內(nèi)存空間分成不同的部分,分別用來存儲(chǔ)不同的信息,具體如下: ? 程序代碼。 ? 連接會(huì)話的信息。 ? 進(jìn)程通信和共享的相關(guān)信息。 ? 程序運(yùn)行過程中的信息(例如當(dāng)前查詢的狀態(tài)等)。 ? 緩沖區(qū)中的數(shù)據(jù),如用戶要訪問的數(shù)據(jù)、重做日志等。這部分也叫做 SGA。 當(dāng)用戶發(fā)出一條 SQL語(yǔ)句時(shí),首先由服務(wù)器進(jìn)程對(duì)用戶的 SQL語(yǔ)句進(jìn)行語(yǔ)法分析并執(zhí)行,然后將數(shù)據(jù)從數(shù)據(jù)文件讀入到系統(tǒng)的數(shù)據(jù)緩存區(qū),修改后的數(shù)據(jù)由服務(wù)器進(jìn)程寫回到數(shù)據(jù)文件中。按照系統(tǒng)對(duì)于內(nèi)存的使用方法不同,Oracle數(shù)據(jù)庫(kù)的內(nèi)存可以分為系統(tǒng)全局區(qū) ( SGA) 和程序全局區(qū) ( PGA)。 22 Oracle具有下列基本的內(nèi)存結(jié)構(gòu): ? 軟件代碼區(qū) ? 系統(tǒng)全局區(qū),包括數(shù)據(jù)庫(kù)緩沖存儲(chǔ)區(qū)、日志緩沖區(qū)和共享池 ? 程序全局區(qū),包括棧區(qū)和數(shù)據(jù)區(qū) ? 排序區(qū) 其中軟件代碼區(qū)用于存儲(chǔ)正在執(zhí)行的或可以執(zhí)行的程序代碼。軟件區(qū)是只讀,可安裝成共享或非共享。 Oracle系統(tǒng)程序是可共享的,以致多個(gè) ORACLE用戶可存取它,而不需要在內(nèi)存有多個(gè)副本。用戶程序可以共享也可以不共享。 排序需要內(nèi)存空間, ORACLE利用該內(nèi)存排序數(shù)據(jù),這部分空間稱為排序區(qū)。排序區(qū)存在于請(qǐng)求排序的用戶進(jìn)程的內(nèi)存中,該空間的大小為適就排序數(shù)據(jù)量的大小,可增長(zhǎng),但受初始化參數(shù)SORT_AREA_SIZER限制。 Oracle的內(nèi)存結(jié)構(gòu)圖如圖 36所示。 數(shù)據(jù)庫(kù)緩沖區(qū) 高速緩存 重做日志 緩沖區(qū) 共享池 J a v a 池 大池 S GA 服務(wù)器進(jìn)程 1 PGA 服務(wù)器進(jìn)程 n 后臺(tái) 進(jìn)程 O r a c l e 進(jìn)程 ? ? ? 圖 36 Oracle的內(nèi)存結(jié)構(gòu) 23 系統(tǒng)全局區(qū)( SGA) 在計(jì)算機(jī)的內(nèi)存中不僅要存儲(chǔ)數(shù)據(jù)庫(kù)中的數(shù)據(jù),還要存儲(chǔ)數(shù)據(jù)字典的信息、重做日志以及經(jīng)過解析的 SQL代碼等。實(shí)例中的這部分內(nèi)存結(jié)構(gòu)叫做系統(tǒng)全局區(qū) (SGA,System Global Area)。 SGA是實(shí)例中最重要的組成部分,一個(gè)實(shí)例只有一個(gè) SGA。 SGA中的數(shù)據(jù)可以在多個(gè)用戶進(jìn)程之間共享。 SGA由若干個(gè)緩存和緩沖池組成,不同類型的數(shù)據(jù)存儲(chǔ)在不同的緩存和緩沖池中。 SGA包含以下幾個(gè)數(shù)據(jù)結(jié)構(gòu)。 1. 數(shù)據(jù)庫(kù)緩沖區(qū)高速緩存 數(shù)據(jù)庫(kù)緩沖區(qū)高速緩存用于存儲(chǔ)用戶最近使用過的數(shù)據(jù)。當(dāng)用戶檢索時(shí),數(shù)據(jù)庫(kù)內(nèi)的數(shù)據(jù)先讀取到該區(qū)域,然后再經(jīng)過處理后返回給用戶。在修改時(shí),被修改的數(shù)據(jù)先被存儲(chǔ)在數(shù)據(jù)庫(kù)緩沖區(qū)內(nèi),而不是馬上寫入磁盤(該數(shù)據(jù)塊稱為臟緩存塊)。只有當(dāng)它達(dá)到一定量或滿足一定條件后, Oracle才將它們寫入磁盤。這樣可以減少磁盤讀寫次數(shù),提高系統(tǒng)的存取效率,改善系統(tǒng)性能。通常,緩沖區(qū)高速緩存是 SGA的最大組成部分。 24 2. 重做日志緩沖區(qū) 重做日志是對(duì)用戶事務(wù)所產(chǎn)生的記錄,通過重做日志能夠重新產(chǎn)生數(shù)據(jù),它
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1