Oracle資料檔案結構,oracle資料結構

來源:互聯網
上載者:User

Oracle資料檔案結構,oracle資料結構

Oracle的資料結構分為 物理結構和邏輯結構


物理結構: 作業系統的資料區塊—>資料檔案datafiles

邏輯結構: 最小資料庫block——>extent——>segement——>tablespace——>databases

 

其中對於一個tablespace可以有多個 datafiles,一個datafiles只能屬於一個tablespace

對於segement可以不再一個datafiles檔案上,但是對於 extent和blocks則必須在一個datafiles上面


Oracle的主要資料檔案有: 參數檔案spfile,密碼檔案 orapwd檔案,資料檔案 datafiles 聯機重做記錄檔 redo log files  控制檔案control files 歸檔記錄檔 archive log files

 

對於 datafile 資料檔案通過 dbw0 進程與 instance的 db buffer cache 完成通訊

對於 redo log file 通過 lgwr進行完成與instance 的 redo log buffer cache  通訊

 

 

對於redo log file 一般情況是有好幾組,當一個檔案寫滿以後會接著寫下一個redo log file 如果所有的redo log file都寫滿了則會從頭開始覆蓋第一個redo log file 檔案中的資料

 

對於控制檔案 control file 一般情況會有三組一樣的,如果有一個檔案損壞,則會通過其他的兩個控制檔案進行修複這個損壞的檔案,並且啟動資料庫,建議對於三組控制檔案存放到不同的磁碟塊。在資料庫啟動的時候,oracle讀取control file中的相關指標完成資料庫的初始化配置並且啟動oracle 資料庫執行個體。 

 

 

 



Oracle 資料庫 資料檔案 表 資料表空間 使用者的關係

呵呵,問的好,這涉及到資料庫的物理結構和邏輯結構。
首先,你需要明白的一點是:資料庫的物理結構是由資料庫的作業系統檔案所決定,每一個Oracle資料庫是由三種類型的檔案組成:資料檔案、記錄檔和控制檔案。資料庫的檔案為資料庫資訊提供真正的實體儲存體。
每一個Oracle資料庫有一個或多個物理的資料檔案(data file)。一個資料庫的資料檔案包含全部資料庫資料。邏輯資料庫結構(如表、索引等)的資料物理地儲存在資料庫的資料檔案中。資料檔案通常為*.dbf格式,例如:userCIMS.dbf。資料檔案有下列特徵:①、一個資料檔案僅與一個資料庫聯絡;②、一旦建立,資料檔案只增不減;③、一個資料表空間(資料庫儲存的邏輯單位)由一個或多個資料檔案組成。
其次,我們再來敘述一下Oracle的邏輯結構:Oracle的邏輯結構包括資料表空間(tablespace),段(segment),資料區塊(data block)以及模式對象(schema object)。
Oracle資料庫在邏輯上是由多個資料表空間組成的,資料表空間在物理上包含一個或多個資料檔案。而資料檔案大小是塊大小的整數倍;資料表空間中儲存的對象叫段,比如資料區段,索引段和回退段。段由區組成,區是磁碟分配的最小單位。段的增大是通過增加區的個數來實現的。每個區的大小是資料區塊大小的整數倍,區的大小可以不相同;資料區塊是資料庫中的最小的I/O單位,同時也是記憶體資料緩衝區的單位,及資料檔案儲存空間單位。塊的大小由參數DB_BLOCK_SIZE設定,其值應設定為作業系統塊大小的整數倍。
⑴、資料表空間(tablespace)
資料表空間是資料庫中最大的邏輯單位,每一個資料表空間由一個或多個資料檔案組成,一個資料檔案只能與一個資料表空間相聯絡。每一個資料庫都有一個SYSTEM資料表空間,該資料表空間是在資料庫建立或資料庫安裝時自動建立的,用於儲存系統的資料字典表,程式系統單元,過程函數,包和觸發器等,也可用於儲存使用者資料表,索引對象。資料表空間具有線上(online)和離線(offline)屬性,可以將除SYSTME以外的其他任何錶空間置為離線。
⑵、段(segment)
資料庫的段可以分為四類:資料區段、索引段、回退段和臨時段。
⑶、區
區是磁碟空間分配的最小單位。磁碟按區劃分,每次至少分配一個區。區儲存與段中,它由連續的資料區塊組成。
⑷、資料區塊
資料區塊是資料庫中最小的資料群組織單位與管理單位,是資料檔案磁碟儲存空間單位,也是資料庫I/O的最小單位,資料區塊大小由DB_BLOCK_SIZE參數決定,不同的Oracle版本DB_BLOCK_SIZE的預設值是不同的。
⑸、模式對象
模式對象是一種應用,包括:表、聚簇、視圖、索引序列產生器、同義字、雜湊、程式單元、資料庫鏈等。
最後,在來說一下Oracle的使用者、資料表空間和資料檔案的關係:
一個使用者可以使用一個或多個資料表空間,一個資料表空間也可以供多個使用者使用。使用者和資料表空間沒有隸屬關係,資料表空間是一個用來管理資料存放區的邏輯概念,資料表空間只是和資料檔案發生關係,資料檔案是物理的,一個資料表空間可以包含多個資料檔案,而一個資料檔案只能隸屬一個資料表空間。
總結一下:解釋資料庫、資料表空間、資料檔案、表、資料的最好辦法就是想象一個裝滿東西的柜子。資料庫其實就是柜子,櫃中的抽屜是資料表空間,抽屜中的檔案夾是資料檔案,檔案夾中的紙是表,寫在紙上的資訊就是資料。...餘下全文>>
 
每一個ORACLE資料庫有一個或多個物理的資料檔案(data file).資料檔案有哪個特徵

D:具體的解釋給你放了 下面了!
Oracle資料庫的物理結構包括資料檔案(datafile)、重做記錄檔(redo log files)、和控制檔案(control files)等。

1、資料檔案

特點:

A、一個資料檔案只能屬於一個資料庫
B、當資料庫空間用完時,資料檔案可以按照預定的設定自動擴充

C、一個或多個資料檔案形成了資料庫中的一種邏輯結構-資料表空間

當需要時,資料檔案中的資料通過資料庫操作被讀出,並緩衝於Oracle的記憶體結構中。例如,當使用者需要訪問資料庫表中的資料時,如果使用者請求的資料還沒有放入緩衝中, 資料庫就會把資料從相應的資料檔案中讀出再放入記憶體。

建立或修改的資料不一定立即被寫入資料檔案。為了減少磁碟訪問以提高效能,變化資料暫存在記憶體中,在適當時間集中地寫入相應的資料檔案,這個過程由後台進程資料庫寫進程 (DBWn)(database writer process,DBWn)完成。

2、控制檔案:

控制檔案中含有說明資料庫物理結構的內容

例如,其中包含以下資訊:

資料庫名

資料檔案、重做記錄檔的名稱和位置

資料庫建立的時間戳記

Oracle可以使用多重控制檔案,即同時維護多個完全相同的控制檔案,以防止控制檔案損壞造成的資料庫故障。

Oracle資料庫的執行個體每次啟動時,通過控制檔案中的內容來確定哪些資料庫檔案和重做記錄檔是執行資料庫操作所必需的。當資料庫的物理構成發生變化時(例如建立了新的資料檔案或重做記錄檔),Oracle自動地修改控制檔案以反映這些變化。此外,資料庫恢複(database recovery)時也要用到控制檔案。

3、重做記錄檔:

每個Oracle資料庫都有兩個或多個重做記錄檔(redo log file)。這組檔案作為一個整體被稱為資料庫的重做日誌。重做日誌由重做條目(redo record)構成(也被稱為重做記錄)。

主要功能:記錄對資料的操作。

多重重做日誌(multiplexed redo log):將內容相同的多份重做日誌儲存在不同的磁碟中。

重做日誌中的資訊只能用於恢複由於系統或介質故障導致的不能被寫入資料檔案的資料。

前滾(rolling forward ):在恢複操作中恢複重做日誌資訊的過程

4、存檔記錄檔:

重做記錄檔可以被自動歸檔。當資料庫運行在ARCHIVELOG模式下,Oracle將自動地歸檔重做記錄檔。

5、參數檔案:

包含了資料庫與執行個體的配置參數列表。

6、警示和跟蹤調試記錄檔:

資料庫的警示日誌按時間順序記錄了資料庫運行時產生的訊息與錯誤資訊。

7、備份檔案:

恢複檔案就是用備份檔案(backup file)來替換原有的檔案。
 

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.