Oracle資料庫體系結構簡單概念(2014年2月13日自學筆記)

The薩滿發表於2014-02-13



1
Oracle資料庫體系結構(Oracle伺服器)由Oracle例項和Oracle資料庫組成。

         Oracle例項:記憶體結構+程式結構

         Oracle資料庫:Oracle儲存結構

1.1:記憶體結構

主要組成部分:共享池,大池,流池,資料庫緩衝區快取記憶體,重做日誌緩衝區,JAVA

1.1.1:資料庫高數快取區:是Oracle使用者執行SQL的工作區域,有了這個區域可以提高使用者的訪問速度(可以動態調整大小,也可以自動管理)

1.1.2:重做日誌緩衝區:是存放更改向量的短暫的臨時區域。(大小固定不變,例項啟動時就被固定,無法自動管理)

1.1.3:共享池:是庫快取,資料字典快取,PL/SQL區域,SQL查詢和PL/SQL函式結果快取。這個區域比較複雜,說簡單點就一個大的共享區,使用者提高各種SQL語句解析,解析PL/SQL物件的速度。(共享池的大小是可以動態調整的,也可以知道管理)

1.1.4:大池:主要是供共享伺服器程式使用,跟一些需要大記憶體的程式使用。本區域是可選區域。(大小是可以動態調整跟自動管理)

1.1.5:JAVA池:只有應用程式需要執行資料庫中的JAVA儲存過程時,才需要JAVA池。(大小是可以動態調整跟自動管理)

1.1.6:流池:供Oracle流使用。(大小是可以動態調整跟自動管理)

1.2:程式結構:

         主要組成部分:SMON, PMON, DBWn, LGWRARCnCKPT

        1.2.1SMON(系統監視區):從資料庫開啟階段時驗證資料檔案和聯機日誌檔案,開啟資料庫後執行各種內部管理任務。所以此程式資料的安全與資料庫的效能有很關鍵的作用。

        1.2.2PMON(程式監視區):監視所以伺服器程式,如使用者回話退出,登出,都由PMON程式來負責監控。

        1.2.3: DBWN(資料寫入器):用於將資料庫快取記憶體區的髒資料寫入資料檔案中。使用極懶的演算法來執行寫入操作(DBW,會執行寫入操作的情況:1:沒有任何緩衝區(全新不髒的),2:髒緩衝區過多(內部閾值FAST_START_MTTR_TARGET決定),3:遇到3秒超時,4:遇到檢查點的時候(完全檢查點還是增量檢查點?)

        1.2.4:LGWR(日誌寫入器):用於將重做日誌快取區的資料寫入聯機日誌檔案中。回話產生的更改向量,為了確保資料不丟失,使用者執行CMNET操作,LGWR會實時寫入。(三種情況下會觸發LGWR執行寫入操作:1CMNET時,準實時寫入。 2:重做日誌快取區1/3滿時(這樣可以提高CMNET速度,因為只有LGWR寫入完成後CMNET才會顯示給使用者)3

DBWN寫入之前。

        1.2.5:CKPT(檢查點程式):檢查點位置會影響系統崩潰,例項重新恢復所需要的時間。

(檢查點程式可以分為1:完全檢查點:alter system checkpoint 2增量檢查點(提示DBWN執行一些寫入操作,使得檢查點往前移動,這個位置也是例項恢復的開始位置)

        1.2.6:ARCN(歸檔進-程)生產環境必須要有的程式。當聯機重做日誌檔案滿的時候,由這個程式間日誌歸檔,然後新的更改時候覆蓋原有的聯機重做日誌檔案。

1.3 儲存結構(物理儲存結構,邏輯儲存結構)

        1.3.1:物理儲存結構(必須包含,資料檔案,控制檔案,聯機重做日誌檔案)

                   主要部分:控制檔案,聯機重做日誌檔案,資料檔案,例項引數檔案,口令檔案,歸檔重做日誌檔案。

        1.3.1.1:控制檔案:包含有關資料庫本身的資料(即物理資料庫的結構資訊)。這些檔案對資料庫而言至關重要。如資料檔案,聯機重做日誌檔案的位置等。

        1.3.1.2:聯機重做日誌檔案:用於存放每個更改向量的時間順序儲存一個連續的鏈.( 至少必須有兩個聯機重做日誌檔案組。每個組至少2個成員)

        1.3.1.3:資料檔案:用於存放使用者資訊,跟資料字典和輔助資料的地方。

        1.3.1.4:例項引數檔案:用於定義啟動例項時如何配置例項。

        1.3.1,5:口令檔案:存放使用者身份驗證檔案。

        1.3.1.6:歸檔重做日誌檔案:包含例項生成的資料更改(重做)的實時歷史記錄。使用這些檔案和資料庫備份可以恢復丟失的資料檔案。也就是說,使用歸檔日誌可以恢復還原的

資料檔案。

        1.3.2:邏輯資料庫結構(表空間,段,區間,oracle 塊)

        1.3.2.1:表空間:一個資料庫可劃分為多個邏輯儲存單元,這些單元稱為表空間,可以包含一個或者多個資料檔案。

        1.3.2.2:段:最普通的段就是表,還有索引段,撤銷段等。 一個段僅存在於一個表空間中。

        1.3.2.3:區:區間是一個資料檔案中一組連續編號的Oracle塊。這樣可以方便管理塊。

        1.3.2.4Oracle塊:Oracle塊資料庫的I/O單位。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29481709/viewspace-1081001/,如需轉載,請註明出處,否則將追究法律責任。

相關文章