Oracle 筆記(一)、安裝及體系結構

一、安裝
安裝過程中的幾個關鍵點:全局數據庫名、系統標識符(SID,實例名)、服務器參數文件(SPFILEXXX(實例名).ORA)。
監聽器的配置: server\NETWORK\ADMIN 文件夾下的參數文件(listener.ora,tnsnames.ora)。


二、Oracle 體系結構

1、實例
實例是後臺進程和內存結構的集合,必須啓動實例才能訪問數據庫中的數據,一個實例只能打開並使用一個數據庫。
實例啓動時,將分配一個系統全局區(SGA)並啓動一系列的後臺進程,每個後臺進程執行不同的任務。


2、數據庫
Oracle 數據庫物理上指一組操作系統文件(數據文件),邏輯上指數據庫創建後的邏輯關係。


3、會話
會話時用戶與 Oracle 服務器的單個連接,建立連接時創建,斷開連接時關閉。
當一個數據庫用戶同時對服務器產生多個連接時,則爲該用戶創建多個並行會話。


4、內存
Oracle 內存結構包含以下兩個內存區:
  系統全局區(SGA):實例啓動時分配該內存區。
  程序全局區(PGA):服務器進程啓動時分配該內存區。

A、系統全局區(SGA,System Global Area 共享全局區)
用來存儲數據庫信息,並由服務器進程共享。
按作用可分爲:

   ● 共享池(Shared Pool)【操作共享】
共享池包括 庫緩存區(Shared SQL & PL/SQL) 和 數據字典緩存。
a.庫緩存區:包括最近執行的 SQL 解釋版本,PL/SQL 過程、函數等程序單元的編譯版本,方便用戶共享調用,節省開銷及提高進程速度。
b.數據字典緩存:把頻繁用到的數據字典(表,列,索引、權限等信息)存儲到內存中,能減少 SQL語句引起的性能上衝突。

   ● 數據緩衝區(Data Buffer Cache)【記錄共享】
主要作用是將需要讀取或者存取的數據塊進行一個緩衝,從而減少太過頻繁的對磁盤進行讀和寫的操作。所有同時上線的用戶都可以共享這個區域。進程在處理一個查詢時,優先查找內存中是否有所需的數據塊,提高了讀取速度。

   ● 日誌緩衝區(Redo Log Buffer)
該區域是將所有記錄數據操作的信息都存儲在該緩衝中,在適當的時機由LGWR進程將他們寫入到磁盤的日誌文件中。

   ● 大共享區(Large Pool)
Oracle 可選特徵,主要用於多線程。

B、程序全局區(Program Global Area)
PGA是數據庫服務器內存中爲單個用戶進程分配的專用的內存區域,是用戶進程私有的,不能共享。
它由用戶連接到數據庫並創建一個會話時自動分配,當會話結束後自動釋放。



5、進程
用戶進程:數據庫用戶請求連接 Oracle 服務器時啓動。
服務器進程:用戶建立會話連接時啓用,處理一個或多個用戶進程請求。
後臺進程:Oracle 實例啓動時啓動,提高系統效能和協調多用戶。
    數據寫進程(DBWR):負責將塊緩衝區的數據寫入到磁盤中的數據文件裏。
    日誌寫進程(LGWR):將重做日誌緩衝區的信息寫入到重做日誌文件中。
    系統監控(SMON):如果數據庫遇到不正常關閉的情況,比如突然斷電等。那麼再次啓動數據庫時SMON進程進行必要的 數據修復操作。
    進程監控(PMON):負責在一個Oracle進程失敗時清理資源,用於恢復失敗的用戶進程。
    檢查點進程(CKPT):負責在每當緩衝區中的更改永久地紀錄在數據庫中時,更新控制文件和數據文件中的數據庫狀態信息,確保數據庫的同步。
    歸檔進程(ARCH):在每次日誌切換時把已滿的日誌組進行備份歸檔,有歸檔方式和非歸檔方式(默認)。



6、數據庫邏輯結構
數據庫、表空間(tablespace)、段(segment)、區(extent)、數據塊(block)




7、數據庫物理結構
    數據文件:用於存放所有的數據(*.DBF),每個數據庫有一組數據文件,一個數據文件只能對應一個數據庫。
    日誌文件:記錄了對數據庫進行的所有操作(*.LOG),主要用於數據庫故障時恢復。 
    控制文件:記錄了數據庫所有文件的控制信息(*.CTL)。 

語法查看:
C:\> sqlplus "sys/test1234 as sysdba"

SQL> DESC v$controlfile
SQL> SELECT status,name FROM v$controlfile

SQL> DESC v$datafile
SQL> SELECT file#,status,name FROM v$datafile

SQL> DESC v$logfile
SQL> SELECT member FROM v$controlfile
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章