Oracle資料庫的體系結構

2021-09-08 06:14:50 字數 3779 閱讀 5672

oracle

資料庫的體系結構包括四個方面:

資料庫的物理結構、邏輯結構、記憶體結構及程序。

1. 物理結構 物理

資料庫結構是由構成

資料庫的作業系統檔案所決定,oracle

資料庫檔案包括:

資料檔案(data file)

資料檔案用來儲存

資料庫中的全部資料,例如

資料庫表中的資料和索引資料.通常以為*.dbf格式,例如:usercims.dbf 。

日誌檔案(redo log file)

日誌檔案用於記錄

資料庫所做的全部變更(如增加、刪除、修改)、以便在系統發生故障時,用它對

資料庫進行恢復。名字通常為log*.dbf格式,如:log1cims.dbf,log2cims.dbf 。

www.bitscn.net中國網管部落格

控制檔案(control file)

每個oracle

資料庫都有相應的控制檔案,它們是較小的二進位制檔案,用於記錄

資料庫的物理結構,如:

資料庫名、 資料庫

的資料檔案和日誌檔案的名字和位置等資訊。用於開啟、訪問

資料庫。名字通常為ctrl*ctl 格式,如ctrl1cims.ctl。

配置檔案

配置檔案記錄oracle

資料庫執行時的一些重要引數,如:資料塊的大小,記憶體結構的配置等。名字通常為init*.ora 格式,如:initcims.ora 。

2 邏輯結構

oracle

資料庫的邏輯結構描述了

資料庫從邏輯上如何來儲存

資料庫中的資料。邏輯結構包括表空間、段、區、資料塊和模式物件。

資料庫的邏輯結構將支配乙個

資料庫如何使用系統的物理空間.模式物件及其之間的聯絡則描述了關係

資料庫之間的設計.

play.bitscn.com累了嗎玩一下吧 乙個

資料庫從邏輯上說是由乙個或多個表空間所組成,表空間是

資料庫中物理編組的資料倉儲,每乙個表空間是由段(segment)組成,乙個段是由一組區(extent)所組成,乙個區是由一組連續的

資料庫塊(database block)組成,而乙個

資料庫塊對應硬碟上的乙個或多個物理塊。乙個表空間存放乙個或多個

資料庫的物理檔案(即資料檔案).乙個

資料庫中的資料被邏輯地儲存在表空間上。

表空間(tablespace)

oracle

資料庫被劃分為乙個或多個稱為表空間的邏輯結構,它包括兩類表空間,system表空間和非system表空間,其中,system表空間是安裝

資料庫時自動建立的,它包含

資料庫的全部資料字典,儲存過程、包、函式和觸發器的定義以及系統回滾段。除此之外,還能包含使用者資料。。

bbs.bitscn.com國內最早的網管論壇

乙個表空間包含許多段,每個段有一些可以不連續的區組成,每個區由一組連續的資料塊組成,資料塊是

資料庫進行操作的最小單位。

每個表空間對應乙個或多個資料檔案,每個資料檔案只能屬於乙個表空間。

資料庫塊(database block)

資料庫塊也稱邏輯塊或oracle塊,它對應磁碟上乙個或多個物理塊,它的大小由初始化引數db-block-size(在檔案init.ora中)決定,典型的大小是2k。pckfree 和pctused 兩個引數用來優化資料塊空間的使用。

區(extent)

區是由一組連續的資料塊所組成的

資料庫儲存空間分配的邏輯單位。

段(segment)

段是乙個或多個不連續的區的集合,它包括乙個表空間內特定邏輯結構的所有資料,段不能跨表空間存放。oracle

資料庫包括資料段、索引段、臨時段、回滾段等。

模式物件(schema object)

需要什麼來搜一搜吧so.bitscn.com

oracle

資料庫的模式物件包括表、檢視、序列、同意詞、索引、觸發器、儲存.過程等,關於它們將重點在後面章節介紹。

3.oracle server系統程序與記憶體結構

當在計算機伺服器上啟動oracle

資料庫後,稱伺服器上啟動了乙個oracle例項(instance)。oracle 例項(instance)是訪問和控制

資料庫的軟體機制,它包含系統全域性區(sga)和oracle程序兩部分。sga是系統為例項分配的一組共享記憶體緩衝區,用於存放

資料庫例項和控制資訊,以實現對

資料庫中資料的管理和操作。

程序是作業系統中乙個極為重要的概念。乙個程序執行一組操作,完成乙個特定的任務.對oracle

資料庫管理系統來說,程序由使用者程序、伺服器程序和後台程序所組成。

當使用者執行乙個應用程式時,系統就為它建立乙個使用者程序。伺服器程序處理與之相連的使用者程序的請求,它與使用者程序相通訊,為相連的使用者程序的oracle請求服務。

so.bitscn.com網管資料庫任你搜

為了提高系統效能,更好地實現多使用者功能,oracle還在系統後台啟動一些後台程序,用於

資料庫資料操作。

系統程序的後台程序主要包括:

smon 系統監控程序:(system monitor)負責完成自動例項恢復和**分類(sort)表空間。

pmon 程序監控程序:(process monitor)實現使用者程序故障恢復、清理記憶體區和釋放該程序所需資源等。

dbwr

資料庫寫程序:

資料庫緩衝區的管理程序。在它的管理下,

資料庫緩衝區中總保持有一定數量的自由緩衝塊,以確保使用者程序總能找到供其使用的自由緩衝塊。

lgwr 日誌檔案寫程序:是日誌緩衝區的管理程序,負責把日誌緩衝區中的日誌項寫入磁碟中的日誌檔案上。每個例項只有乙個lgwr程序。

feedom.net關注網管是我們的使命

reco 恢復程序:是在具有分布式選項時使用的乙個程序,主要用於解決引用分布式事務時所出現的故障。它只能在允許分布式事務的系統**現。

lckn 封鎖程序:用於並行伺服器系統,主要完成例項之間的封鎖。

記憶體結構(sga)

sga是oracle為乙個例項分配的一組共享記憶體緩衝區,它包含該例項的資料和控制資訊。sga在例項啟動時被自動分配,當例項關閉時被收回。

資料庫的所有資料操作都要通過sga來進行。

sga中記憶體根據存放資訊的不同,可以分為如下幾個區域:

buffer cache:存放

資料庫中 資料庫

塊的拷貝。它是由一組緩衝塊所組成,這些緩衝塊為所有與該例項相鏈結的使用者程序所共享。緩衝塊的數目由初始化引數db_block_buffers確定,緩衝塊的大小由初始化引數db_block_size確定。大的資料塊可提高查詢速度。它由dbwr操作。

b. 日誌緩衝區redo log buffer:存放資料操作的更改資訊。它們以日誌項(redo entry)的形式存放在日誌緩衝區中。當需要進行

資料庫恢復時,日誌項用於重構或回滾對

資料庫所做的變更。日誌緩衝區的大小由初始化引數log_buffer確定。大的日誌緩衝區可減少日誌檔案i/o的次數。後台程序lgwr將日誌緩衝區中的資訊寫入磁碟的日誌檔案中,可啟動arch後台程序進行日誌資訊歸檔。

feedom.net國內最早的網管**

c. 共享池shared pool:包含用來處理的sql語句資訊。它包含共享sql區和資料字典儲存區。共享sql區包含執行特定的sql語句所用的資訊。資料字典區用於存放資料字典,它為所有使用者程序所共享。

cursors:一些記憶體指標,執行待處理的sql語句

其他資訊區:除了上述幾個資訊區外,還包括一些程序之間的通訊資訊(如封鎖資訊);在多線索伺服器配置下,還有一些程式全域性區的資訊,請求佇列和響應佇列等。

資料庫 Oracle體系結構

oracle就資料庫本身而言,大致上可以分為兩個主要部分 1.oracle例項 oracle instance是指資料庫伺服器的記憶體及相關處理程式。2.oracle資料庫檔案 資料庫檔案則由作業系統內的各種檔案組成。oracle instance主要由系統全域性區和後台處理程式組成。全域性區包括1...

Oracle資料庫 體系結構

一 涉及內容 1.了解資料庫的物理儲存結構和邏輯儲存結構 二 具體操作 1.分別使用sql 命令和oem 圖形化工具檢視本地資料庫的物理檔案,並使用oem 工具在現有的users 表空間中新增user02.dbf 資料檔案。要求檢視的物理檔案包括 資料檔案 日誌組 控制檔案。1 使用sql 命令檢視...

Oracle資料庫的體系結構

1 我們常說的oracle或oracle資料庫指的是oracle資料庫管理系統,其由oracle資料庫和oracle例項構成 1 oracle資料庫 相關的作業系統檔案 即儲存在計算機硬碟上的檔案 集合,這些檔案組織在一起,成為乙個邏輯整體,即為oracle資料庫 oracle資料庫由6類檔案組成,...