當前位置:首頁 » 存儲配置 » oracle物理存儲結構

oracle物理存儲結構

發布時間: 2025-03-13 07:43:00

⑴ 請問Oracle的資料庫體系的物理結構是怎樣的

物理結構,即Oracle資料庫使用的操作系統文件結構。
對於資料庫物理結構文件,不同的oracle版本,不同的操作系統平台上有不同的存儲目錄結構.
資料庫的物理結構文件按其作用可以分為三類:
數據文件
日誌文件
控制文件
一、數據文件
數據文件用來存儲資料庫的數據,如表、索引等。讀取數據時,系統首先從資料庫文件中讀取數據,並存儲到SGA的數據緩沖區中。
二、重做日誌文件
重做日誌文件記錄對資料庫的所有修改信息。它是三類文件中最復雜的一類文件,也是保證資料庫安全與資料庫備份與恢復有直接關系的文件。
三、控制文件
控制文件是一個二進制文件,用來描述資料庫的物理結構,一個資料庫只需要一個控制文件,控制文件的內容包括:
資料庫名及資料庫唯一標識
數據文件和日誌文件標識
資料庫恢復所需的同步信息,即檢查點號
.
Oracle資料庫的體系結構包括四個方面:資料庫的物理結構、邏輯結構、內存結構及進程。

⑵ 淺談應該如何理解Oracle的架構知識


1、物理結構
Oracle物理結構由控制文件、數據文件、重做日誌文件、參數文件、歸檔文件、口令文件組成
一個資料庫中的數據存儲在磁碟上物理文件,被使用時,調入內存。其中控制文件、數據文件、重做日誌文件、跟蹤文件及警告日誌(trace files,alert files)屬於資料庫文件;參數文件(parameter file)口令文件(password file)是非資料庫文件。
數據文件:存儲數據的文件.數據文件典型地代表了根據他們使用的磁碟空間和數量所決定的一個Oracle資料庫的容積。
由於性能原因,每一種類型的數據放在相應的一個或一系列文件中,將這些文件放在不同的磁碟中。
types:
.data dictionary .data
.redo data .index
.temporary data 等等
控制文件:包含維護和驗證資料庫完整性的必要信息、例如,控制文件用於識別數據文件和重做日誌文件,一個資料庫至少需要一個控制文件.
控制文件內容
◆資料庫名
◆表空間信息
◆所有數據文件的名字和位置
◆所有redo日誌文件的名字和位置
◆當前的日誌序列號
◆檢查點信息
◆關於redo日誌和歸檔的當前狀態信息
控制文件的使用過程
控制文件把Oracle引導到資料庫文件的其它部分。啟動一個實例時,Oracle 從參數文件中讀取控制文件的名字和位置。安裝資料庫時,Oracle 打開控制文件。最終打開資料庫時,Oracle 從控制文件中讀取數據文件的列表並打開其中的每個文件。
重做日誌文件
含對資料庫所做的更改記錄,這樣萬一出現故障可以啟用數據恢復。一個資料庫至少需要兩個重做日誌文件.
跟蹤文件及警告日誌(Trace Files and Alert Files)
在instance 中運行的每一個後台進程都有一個跟蹤文件(trace file)與之相連。Trace file 記載後台進程所遇到的重大事件的信息。
警告日誌( Alert Log)是一種特殊的跟蹤文件,每個資料庫都有一個跟蹤文件,同步記載資料庫的消息和錯誤.
參數文件:包括大量影響Oracle資料庫實例功能的設定,如以下設定:
◆資料庫控制文件的定位
◆Oracle用來緩存從磁碟上讀取的數據的內存數量
◆默認的優化程序的選擇.
和資料庫文件相關,執行兩個重要的功能
1〉為資料庫指出控制文件
2〉為資料庫指出歸檔日誌的目標
歸檔文件:是重做日誌文件的離線副本,這些副本可能對於從介質失敗中進行恢復很必要。
口令文件:認證哪些用戶有許可權啟動和關閉Oracle常式.
2、邏輯結構(表空間、段、區、塊)
表空間:是資料庫中的基本邏輯結構,一系列數據文件的集合。
段:是對象在資料庫中佔用的空間.
區:是為數據一次性預留的一個較大的存儲空間.
塊:ORACLE最基本的存儲單位,在建立資料庫的時候指定.
3、內存分配(SGA和PGA)
SGA:是用於存儲資料庫信息的內存區,該信息為資料庫進程所共享。它包含Oracle 伺服器的數據和控制信息,它是在Oracle伺服器所駐留的計算機的實際內存中得以分配,如果實際內存不夠再往虛擬內存中寫。
PGA:包含單個伺服器進程或單個後台進程的數據和控制信息,與幾個進程共享的SGA 正相反,PGA 是只被一個進程使用的區域,PGA 在創建進程時分配,在終止進程時回收.
4、後台進程
包括數據寫進程(Database Writer,DBWR)、日誌寫進程(Log Writer,LGWR)、系統監控(System Monitor,SMON)、進程監控(Process Monitor,PMON)、檢查點進程(Checkpoint Process,CKPT)、歸檔進程、服務進程、用戶進程)
數據寫進程:負責將更改的數據從資料庫緩沖區高速緩存寫入數據文件
日誌寫進程:將重做日誌緩沖區中的更改寫入在線重做日誌文件
系統監控:檢查資料庫的一致性如有必要還會在資料庫打開時啟動資料庫的恢復
進程監控:負責在一個Oracle 進程失敗時清理資源
檢查點進程:負責在每當緩沖區高速緩存中的更改永久地記錄在資料庫中時,更新控制文件和數據文件中的資料庫狀態信息。該進程在檢查點出現時,對全部數據文件的標題進行修改,指示該檢查點。在通常的情況下,該任務由LGWR執行。然而,如果檢查點明顯地降低系統性能時,可使CKPT進程運行,將原來由LGWR進程執行的檢查點的工作分離出來,由CKPT進程實現。對於許多應用情況,CKPT進程是不必要的。只有當資料庫有許多數據文件,LGWR在檢查點時明顯地降低性能才使CKPT運行。CKPT進程不將塊寫入磁碟,該工作是由DBWR完成的。 init.ora文件中 CHECKPOINT_PROCESS 參數控制CKPT進程的使能或使不能。預設時為FALSE,即為使不能。
歸檔進程:在每次日誌切換時把已滿的日誌組進行備份或歸檔
服務進程:用戶進程服務。
用戶進程:在客戶端,負責將用戶的SQL語句傳遞給服務進程,並從伺服器段拿回查詢數據。
5、SCN(System ChangeNumber):
系統改變號,一個由系統內部維護的序列號。當系統需要更新的時候自動增加,他是系統中維持數據的一致性和順序恢復的重要標志。

熱點內容
伺服器搭建直播平台源碼 發布:2025-03-13 12:54:38 瀏覽:811
c語言的題 發布:2025-03-13 12:45:01 瀏覽:607
小學試演算法 發布:2025-03-13 12:39:06 瀏覽:997
更改手機伺服器節點有什麼用 發布:2025-03-13 12:39:04 瀏覽:305
python基礎視頻教程下載 發布:2025-03-13 12:37:38 瀏覽:801
筆記本怎麼配置揚聲器 發布:2025-03-13 12:32:03 瀏覽:542
台灣虛擬伺服器雲主機 發布:2025-03-13 12:18:07 瀏覽:355
家裡的無限密碼怎麼改 發布:2025-03-13 12:00:51 瀏覽:486
中柏如何切換安卓 發布:2025-03-13 11:50:19 瀏覽:963
java版本linux 發布:2025-03-13 11:38:03 瀏覽:168