Oracle 基本體系結構

Oracle 的基本體系結構

1.物理結構

2.邏輯結構

3.實例結構(內存結構+進程結構)

 

wKiom1OZD7eRS9RnAAHbMiO_GIU212.jpg

wKioL1OZD4ugko2gAAGeq94HRX8826.jpg

1.物理結構

物理結構就是現實的數據存儲單元,由駐留在磁盤上的各種文件組成,其中包含以下文件類型:

A:數據文件.dbf=》每一個數據庫都有一個或多個物理的數據文件,包含了數據庫的所有數據;邏輯數據庫結構(如表、索引)的數據物理地存儲在數據文件中。數據文件特徵如下:

@一個數據文件僅與一個數據庫聯繫;

@可對數據文件設置一些特性,可自動跨站;

@一個表空間(數據庫存儲的邏輯單位)由一個或多個數據文件組成;@數據文件大小的表示方式:字節、數據塊;

==》查詢: select * from v$datafile;

 

B:控制文件.ctl=》是一個二進制文件,負責維護數據庫全局物理結構,支持數據庫成功啓動和運行。實例的啓動、數據的更改、數據恢復都需要使用到控制文件。

==》查詢: select * from v$controlfile;

 

C:重做日誌文件.log=》用於記錄數據庫所以修改的信息。功能:保證數據庫安全和數據庫備份與恢復。

@日誌的兩個模式:歸檔模式:archivelog;非歸檔:noarchivelog

@與數據庫有如下關係:

一個數據庫=>至少兩個重做日誌文件組=>每組一個或多個重做日誌成員=>每個成員物理地對應一個重做日誌文件

==》查詢: select * from v$loglfile;

D:參數文件=》用於存儲SGA和後臺進程的配置參數,可分爲文本參數文件(PFILE)和服務器參數文件(SPFILE)【不能進行編輯】。

 

E:警告和跟蹤日誌文件

F:備份文件

G:歸檔重做日誌文件=》對已經寫滿的重做日誌文件進行復制並保存生成的文件。

 

2.邏輯結構

邏輯結構就是從邏輯的角度分析數據庫的構成,從技術的概念上描述數據庫是如何組織和管理數據。因此,在操作系統中是找不到邏輯結構的,單可以通過oracle數據庫的數字字典找到邏輯結構的描述。

邏輯結構包含:表空間、段、區、數據塊

邏輯存儲之間的關係:多個數據塊組成一個區=》多個區組成一個段=》多個段組成一個表空間=》多個表空間組成一個數據庫

@段segment:包含數據段、索引段、臨時段、回退段

 

 

3.實例結構

每一個數據庫和一個實例相聯繫,每當啓動數據庫的時候,SGA首先被分配,然後一個或多個進程被啓動,該SGA和進程的組合稱爲數據庫實例。

在Oracle數據庫中,首先啓動實例,然後實例加載數據庫。

 

A:進程結構

進程結構包含:用戶進程、Oracle進程(服務器進程+後臺進程)

用戶進程:用戶要運行的應用程序;

服務器進程:處理連接到該實例的用戶進程的請求;

後臺進程:系統爲了協調好多個用戶而使用的附加進程;包含:DBWR進程、LGWR進程、CKPT進程、SMON進程、PMON進程、RECO進程、ARCH進程、LCKn進程、Dnnn調度進程

 

B:內存結構

內存結構是數據庫體系結構中最重要的部分之一,是影響數據庫性能的主要因素。

用戶在客戶端啓動了一個應用程序,例如sql*plus,就是在客戶端啓動一個用戶進程;與oracle服務器端連接成功後,會在服務器端生成一個服務器進程,該服務器進程作爲用戶進程的代理進程,代替客戶端執行各種命令並把結果返回給客戶端。

用戶進程一旦中止,服務器進程立刻中止。

根據系統對於內存的使用方法不同,Oracle數據庫的內存可以分爲系統全局區SGA和程序全局區PGA

 

 

 

 

 


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章