九妹帶你瞭解oracle

 

一.oracle 體系架構

 

 

Oracle的體系結構是數據庫的組成,工作過程,以及數據庫中數據的組織與管理機制,要了解oracle數據庫的體系結構,就必須要理解oracle的主要組件和重要的概念。Oracle體系結構包含一系列組件,包括實例、用戶進程、服務進程、數據文件及其他文件,如參數文件、口令文件和歸檔日誌文件等。如下圖所示:

wKiom1kBtemj5oH6AAD_JoLiyac132.png-wh_50

 

實例和數據庫是oracle數據庫體系結構的核心組成部分,也是最重要的兩個概念,dba的主要工作就是維護實例和數據庫。

1)實例

實例是後臺進程和內存的集合,必須啓動實例才能訪問數據庫中的數據。

wKioL1kBtpejU4kuAABFKHzZ4xM767.png-wh_50

Oracle啓動時,將分配一個系統全局區(SGA),並啓動一系列oracle後臺進程

一個實例只能打開並使用一個數據庫

Oracle分爲單進程實例和多進程實例,現在普遍都是多進程實例,多進程就是多用戶,不同用戶使用不同進程來執行oracle的不同部分。

2)數據庫

數據庫是一個數據的集合,該集合被視爲一個邏輯單元。

Oracle 數據庫由操作系統文件組成,這些文件爲數據庫信息提供實際物理存儲區

Oracle 數據庫包括邏輯結構和物理結構。

物理結構:是指存儲數據庫信息的一組操作系統文件,每個數據庫有一個邏輯結構和一個物理結構。物理結構是指構成數據庫的一組操作系統文件,主要由3種類型文件組成:數據文件,控制文件和重做日誌文件。

邏輯結構:是指數據庫數據的邏輯存儲結構,包括:表空間,數據段,表,視圖等。

 

二、oracle存儲結構

Oracle的存儲結構分爲物理結構和邏輯結構,這兩種存儲結構既相互獨立又相互聯繫。

wKioL1kBt7zyRFcyAAFkd12Q1KI374.png-wh_50

三.

1、物理結構:

物理結構就是oracle數據庫創建後使用的操作系統物理文件,分爲以下兩種:

1)主要文件

數據文件:數據文件是物理存儲數據庫的文件,數據文件的特點:每個數據文件只與一個數據庫相聯繫,一個表空間可以包含一個或多個數據文件,一個數據文件只能屬於一個表空間。數據文件包含數據庫的用戶或應用程序數據,以及元數據和數據字典。

 

重做日誌文件:它記錄了對數據的所有更改信息,並提供一種數據恢復機制,如果數據庫服務器發生崩潰,但未丟失任何數據文件,那麼實例便可使用這些文件中的信息恢復數據庫。

 

控制文件:當數據庫讀取時,要根據控制文件的信息查找數據文件。控制文件存儲了數據文件和重做日誌文件的名稱和位置。一個數據庫至少有兩份控制文件,oracle11g默認包括3個控制文件,各個控制文件內容相同,可以避免因爲一個控制文件的損壞導致無法啓動數據庫。控制文件記錄了以下關鍵信息:數據文件的位置和大小、重做日誌文件的位置及大小、數據庫名稱及創建時間、日誌序列號。控制文件對數據庫至關重要。沒有這些文件,就無法打開數據文件以訪問數據庫中的數據。

 

 

2)其他文件

參數文件:用於定義實例啓動時的配置

口令文件:允許sysdbasysoper sysasm 遠程連接到實例並執行管理任務

歸檔日誌文件:使用這些文件和數據庫備份,可以恢復丟失的數據文件。也就是說,歸檔日誌能夠恢復還原的數據文件

 

2、oracle邏輯結構

Oracle的邏輯組件包括表空間、段、區、塊和模式等。

1)表空間

表空間是數據庫中最大的邏輯單位, SYSTEM SYSAUX 表空間是在創建數據庫時創建的必須存在的表空間,還會有TEMPUSERS等。

每個表空間是由一個或多個數據文件組成的,一個數據文件只能與一個表空間相關聯。

表空間的大小等於構成該表空間的所有數據文件大小之和。

表空間和數據文件是相對應的,如果沒有數據文件,表空間不可能獨立存在,如果只有表空間沒有數據文件也是不行的,就好比如果電腦沒有硬盤,你不能再邏輯上看到CD盤,在這裏硬盤就相當於是數據文件,而C盤就相當於是表空間。我們可以把多個數據文件組成一個表空間,然後在表空間裏面存儲數據,表空間和數據文件是對應的,一個表空間可以是由一個或多個數據文件組成的,但是一個數據文件只能在一個表空間當中

 

表空間的作用:

對於不同的用戶分配不同的表空間,對不同的模式對象分配不同的表空間,方便對用戶操作和模式對象的管理。

可以將不同數據文件創建到不同的磁盤中,有利於管理磁盤空間,提高i/o性能,備份和恢復數據等。

 

SYSTEM表空間:用於存放oracle系統內部表和數據字典的數據,如表明、列名、用戶名等。

SYSAUX表空間:作爲SYSTEM的輔助表空間,用於存放各種數據庫工具(如企業管理器、StasPacklogMiner等)用到的數據。用於存放各種模式的對象數據,如智能代理用戶DBSNMP、數據挖掘用戶ODM等。

USERS表空間:作爲用戶使用的表空間,可以在這個表空間上創建各種對象,如創建表,索引等。

TEMP表空間:存放臨時數據的特殊表空間,例如:當需要進行排序時,系統就將排序的數據臨時存放在該表空間,排序處理完成後,即可釋放排序數據所佔用的空間,稱之爲臨時表空間。

 

 

 

 

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