oracle體系結構必須先了解的兩個基本的概念

zyb200發表於2007-06-06
要了解oracle體系結構必須先了解兩個基本的概念: 資料庫和例項.[@more@]一: 資料庫
資料庫(database)是一個資料集合.
無論資料庫是採用關係結構還是物件導向結構, oracle資料庫都將
其資料存放在資料檔案中. 在其內部, 資料庫結構資料對檔案的邏輯
對映, 使不同的資料分開儲存, 這些邏輯劃分稱為表空間.
表空間和檔案介紹:
1: 表空間
表空間(tablespace)是資料庫的邏輯劃分, 每個資料庫至少有一個
表空間,叫做系統表空間(system 表空間). 一個表空間只能屬於一個資料庫.
每個表空間由同一個磁碟上的一個或多個檔案組成, 這些檔案稱為資料檔案.

表空間的特性:
1)控制資料庫資料磁碟分配
2)限制使用者在表空間中可以使用的磁碟空間大小
3)表空間具有 online, offline, readonly, readwrite屬性
修改表空間的屬性:
SQL> alter tablespace 表空間名稱 屬性;
查詢表空間狀態:
SQL> select tablespace_name, status from dba_tablespaces;
注意: system, undo, temp表空間不能設為offline屬性.
4)完成部分資料庫的備份與恢復
5)表空間透過資料檔案來擴大, 表空間的大小等於構成該表空間的所以資料檔案的大小隻和.
查詢表空間與資料檔案對應關係:
SQL> select tablespace_name, bytes, file_name from dba_data_files;
基於表空間的幾個操作:
1)查詢使用者預設表空間:
SQL> select username, default_tablespace from dba_users;
2)查詢表與儲存該表的表空間:
SQL> select table_name, tablespace_name from user_tables;
3)修改使用者預設表空間:
SQL> alter user username default tablespace tablespace_name;
4)將資料從一個表空間移動到另一個表空間:
SQL> alter table table_name move tablespace tablespace_name;

2: 資料檔案
每個表空間由同一個磁碟上的一個或多個檔案組成, 這些檔案叫做資料檔案(datafile),
資料檔案只能屬於一個表空間. 資料檔案建立後可以改變大小. 建立新的表空間需要建立新的
資料檔案. 資料檔案一旦加入到表空間中, 就不能從表空間中移走, 也不能與其他表空間發生聯絡.
資料庫必須的三類檔案是 data file, control file, redolog file. 其他檔案 prameter file,
password file, archived log files並不是資料庫必須的, 他們只是輔助資料庫的.

檢視資料庫的物理檔案組成:
1)檢視資料檔案: SQL> select * from v$datafile;
2)檢視控制檔案: SQL> select * from v$controlfile;
3)檢視日誌檔案: SQL> select * from v$logfile;
二: 例項
通俗的講例項就是操作oracle資料庫的一種手段.
資料庫例項也稱作伺服器, 是用來訪問資料庫檔案集的儲存結構及後臺程式的集合.
一個資料庫可以被多個例項訪問(稱為真正的應用群集選項).
決定例項的大小及組成的各種引數或者儲存在名稱init.ora的初始化檔案中, 或者隱藏
在資料庫內部的伺服器引數檔案中. 透過spfile引用該檔案, spfile儲存在spfile.ora檔案中.
例項啟動時讀取初始化檔案, 資料庫系統管理員可以修改該檔案, 對初始化檔案的修改只有
在下次啟動時才有效.

Instance分為兩部分:
1: memory structure(記憶體結構)
memory structure分為兩部分:SGA(System Global Area)區是用於儲存資料庫資訊的記憶體區,
該資訊為資料庫程式所共享。它包含Oracle 伺服器的資料和控制資訊,
它是在Oracle 伺服器所駐留的計算機的實際記憶體中得以分配,如果實際內
存不夠再往虛擬記憶體中寫。
包括:
.share pool
.datafase buffer cache
.redo log buffer
.other structures
PGA(Program Global Area)區包含單個伺服器程式或單個後臺程式的
資料和控制資訊,與幾個程式共享的SGA 正相反PGA 是隻被一個程式使
用的區域,PGA 在建立程式時分配在終止程式時回收

2: background process(後臺程式)
包括: .PMON 負責在一個Oracle 程式失敗時清理資源
.SMON 檢查資料庫的一致性如有必要還會在資料庫開啟時啟動資料庫的恢復
.DBWR 負責將更改的資料從資料庫緩衝區快取記憶體寫入資料檔案
.LGWR 將重做日誌緩衝區中的更改寫入線上重做日誌檔案
.CKPT 負責在每當緩衝區快取記憶體中的更改永久地記錄在資料庫中時,更新控制檔案和資料檔案中的資料庫狀態資訊。
.OTHER

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/64429/viewspace-917704/,如需轉載,請註明出處,否則將追究法律責任。

相關文章