普及一下oracle的基礎知識,總結一下,oracle 是由實例和數(shù)據(jù)庫組成。結構如下:
oracle數(shù)據(jù)庫由實例、數(shù)據(jù)庫組成:
* 數(shù)據(jù)庫由數(shù)據(jù)文件(包含oracle 數(shù)據(jù)、索引、表結構等數(shù)據(jù))、控制文件(包括每個表的操作信息)、日志文件(數(shù)據(jù)操作sql語句)、參數(shù)文件、口令文件、日志歸檔文件(歸檔模式下)(服務器崩潰、硬盤損壞情況下,通過日志恢復時用)
* 實例由 內存結構(memory strutct) 和 后臺進程(background processor)組成。
內存結構組成:
* PGA: Processor Global Area 程序全局區(qū) ,每一個客戶端接入到oracle 服務器都有一個PGA,用于保存該客戶單的相關信息
* SGA: System Global Area 系統(tǒng)全局區(qū),主要是給oracle實例使用,包括 shared pool 、 data buffer area , redo log buffer .
共享池(shared pool):
* 包括library cache 、data directory cache 組成,其中 library cache 主要保存最近的sql 檢查、編譯、執(zhí)行計劃, 下次有同樣語句過來的時候,可以重用這些,避免重復的檢查編譯執(zhí)行計劃。 data directory cache 主要保存數(shù)據(jù)庫數(shù)據(jù)表的字段定義、索引數(shù)據(jù)等, shared pool 的大小直接影響到數(shù)據(jù)庫的性能。
data buffer area : 主要保存用戶對數(shù)據(jù)的修改,查詢操作。該內存區(qū)域的大小直接影響數(shù)據(jù)庫的性能。
redo log buffer area: 主要保存最近用戶對數(shù)據(jù)庫的操作記錄,該大小對數(shù)據(jù)庫性能沒有多大影響
oracle 必須要的后臺進程包括:PMON 、 SMON 、 DBWR、 LOGWR、 CKPT、其他,每個作用如下:
*PMON 監(jiān)控PGA的健康情況,釋放已經(jīng)死去的PGA,回收資源,管理PGA的生命周期
*SMON 監(jiān)控SGA的健康情況,收集SGA碎片內存,監(jiān)控實例健康情況
*DBWR 維護data buffer area 和物理表數(shù)據(jù)的一致性
*LGWR 維護redo log buffer area 內存數(shù)據(jù)和日志文件的一致性
*CKPT 設置檢查點,在oracle 實例出現(xiàn)問題的時候,可以恢復到實例失敗前的情況。
oracle 內存結構有 塊、區(qū)、段、表空間組成,塊是oracle 在內存中的最小結構, 區(qū)、段、 表空間是oracle 依次向上的內存結構??斓奶?shù)據(jù)管理麻煩,太大,數(shù)據(jù)碎片比較多。具體情況具體分析。
表空間是oracle最大的邏輯單位,一個表空間只能屬于一個數(shù)據(jù)庫,一個數(shù)據(jù)庫可以包含多個表空間,但默認包含一個system的表空間。創(chuàng)建表空間的語法:
復制代碼 代碼如下:
CREATE TABLESPACE name
DATAFILE path [SIZE interger M|K]
LOGFILE path
[AUTOEXTEND ON | OFF]
客戶端鏈接服務器配置:
以后補充
您可能感興趣的文章:- Oracle SQL樹形結構查詢
- Oracle中scott表結構與簡單查詢實例分析
- oracle復制表結構和復制表數(shù)據(jù)語句分享
- Oracle 11g Release (11.1) 索引底層的數(shù)據(jù)結構
- BS結構中使用PHP訪問ORACLE LOB
- oracle邏輯結構分析