一.oracle 體系架構數據庫
Oracle的體系結構是數據庫的組成,工做過程,以及數據庫中數據的組織與管理機制,要了解oracle數據庫的體系結構,就必需要理解oracle的主要組件和重要的概念。Oracle體系結構包含一系列組件,包括實例、用戶進程、服務進程、數據文件及其餘文件,如參數文件、口令文件和歸檔日誌文件等。以下圖所示:服務器
實例和數據庫是oracle數據庫體系結構的核心組成部分,也是最重要的兩個概念,dba的主要工做就是維護實例和數據庫。架構
1)實例oracle
實例是後臺進程和內存的集合,必須啓動實例才能訪問數據庫中的數據。ide
n Oracle啓動時,將分配一個系統全局區(SGA),並啓動一系列oracle後臺進程工具
n 一個實例只能打開並使用一個數據庫性能
n Oracle分爲單進程實例和多進程實例,如今廣泛都是多進程實例,多進程就是多用戶,不一樣用戶使用不一樣進程來執行oracle的不一樣部分。spa
2)數據庫操作系統
數據庫是一個數據的集合,該集合被視爲一個邏輯單元。代理
Oracle 數據庫由操做系統文件組成,這些文件爲數據庫信息提供實際物理存儲區
Oracle 數據庫包括邏輯結構和物理結構。
物理結構:是指存儲數據庫信息的一組操做系統文件,每一個數據庫有一個邏輯結構和一個物理結構。物理結構是指構成數據庫的一組操做系統文件,主要由3種類型文件組成:數據文件,控制文件和重作日誌文件。
邏輯結構:是指數據庫數據的邏輯存儲結構,包括:表空間,數據段,表,視圖等。
2、oracle存儲結構
Oracle的存儲結構分爲物理結構和邏輯結構,這兩種存儲結構既相互獨立又相互聯繫。
三.
1、物理結構:
物理結構就是oracle數據庫建立後使用的操做系統物理文件,分爲如下兩種:
1)主要文件
n 數據文件:數據文件是物理存儲數據庫的文件,數據文件的特色:每一個數據文件只與一個數據庫相聯繫,一個表空間能夠包含一個或多個數據文件,一個數據文件只能屬於一個表空間。數據文件包含數據庫的用戶或應用程序數據,以及元數據和數據字典。
n 重作日誌文件:它記錄了對數據的全部更改信息,並提供一種數據恢復機制,若是數據庫服務器發生崩潰,但未丟失任何數據文件,那麼實例即可使用這些文件中的信息恢復數據庫。
n 控制文件:當數據庫讀取時,要根據控制文件的信息查找數據文件。控制文件存儲了數據文件和重作日誌文件的名稱和位置。一個數據庫至少有兩份控制文件,oracle11g默認包括3個控制文件,各個控制文件內容相同,能夠避免由於一個控制文件的損壞致使沒法啓動數據庫。控制文件記錄瞭如下關鍵信息:數據文件的位置和大小、重作日誌文件的位置及大小、數據庫名稱及建立時間、日誌序列號。控制文件對數據庫相當重要。沒有這些文件,就沒法打開數據文件以訪問數據庫中的數據。
2)其餘文件
n 參數文件:用於定義實例啓動時的配置
n 口令文件:容許sysdba、sysoper 和sysasm 遠程鏈接到實例並執行管理任務
n 歸檔日誌文件:使用這些文件和數據庫備份,能夠恢復丟失的數據文件。也就是說,歸檔日誌可以恢復還原的數據文件
二、oracle邏輯結構
Oracle的邏輯組件包括表空間、段、區、塊和模式等。
1)表空間
n 表空間是數據庫中最大的邏輯單位, SYSTEM 和SYSAUX 表空間是在建立數據庫時建立的必須存在的表空間,還會有TEMP,USERS等。
n 每一個表空間是由一個或多個數據文件組成的,一個數據文件只能與一個表空間相關聯。
n 表空間的大小等於構成該表空間的全部數據文件大小之和。
n 表空間和數據文件是相對應的,若是沒有數據文件,表空間不可能獨立存在,若是隻有表空間沒有數據文件也是不行的,就比如若是電腦沒有硬盤,你不能再邏輯上看到C盤D盤,在這裏硬盤就至關因而數據文件,而C盤就至關因而表空間。咱們能夠把多個數據文件組成一個表空間,而後在表空間裏面存儲數據,表空間和數據文件是對應的,一個表空間能夠是由一個或多個數據文件組成的,可是一個數據文件只能在一個表空間當中。
表空間的做用:
n 對於不一樣的用戶分配不一樣的表空間,對不一樣的模式對象分配不一樣的表空間,方便對用戶操做和模式對象的管理。
n 能夠將不一樣數據文件建立到不一樣的磁盤中,有利於管理磁盤空間,提升i/o性能,備份和恢復數據等。
n SYSTEM表空間:用於存放oracle系統內部表和數據字典的數據,如代表、列名、用戶名等。
n SYSAUX表空間:做爲SYSTEM的輔助表空間,用於存放各類數據庫工具(如企業管理器、StasPack、logMiner等)用到的數據。用於存放各類模式的對象數據,如智能代理用戶DBSNMP、數據挖掘用戶ODM等。
n USERS表空間:做爲用戶使用的表空間,能夠在這個表空間上建立各類對象,如建立表,索引等。
n TEMP表空間:存放臨時數據的特殊表空間,例如:當須要進行排序時,系統就將排序的數據臨時存放在該表空間,排序處理完成後,便可釋放排序數據所佔用的空間,稱之爲臨時表空間。