Oracle體系結構前必掌握的概念

2021-08-27 12:39:42 字數 2630 閱讀 6200

對於初學者來講,在了解oracle體系結構之前必須掌握以下兩個基本的概念: 資料庫和例項。

一、資料庫

資料庫(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 負責將更改的資料從資料庫緩衝區快取記憶體寫入資料檔案

.ckpt 負責在每當緩衝區快取記憶體中的更改永久地記錄在資料庫中時,更新控制檔案和資料檔案中的資料庫狀態資訊。

Oracle體系結構前必須掌握的兩個概念

對於初學者來講,在了解oracle體系結構之前必須掌握以下兩個基本的概念 資料庫和例項。一 資料庫 資料庫 database 是乙個資料集合.無論資料庫是採用關係結構還是物件導向結構,oracle資料庫都將 其資料存放在資料檔案中.在其內部,資料庫結構資料對檔案的邏輯 對映,使不同的資料分開儲存,這...

oracle體系結構

oracle由例項和資料庫組成 例項是由sga system global area 和一系列後台程序組成的,其中sga最主要劃分為共享池 shared pool 資料緩衝區 db cache 和日誌緩衝區 log buffer 後台程序包括pmon smon lckn reco ckpt dbwr...

oracle體系結構

一.oracle資料庫的後台程序 dbwr 資料庫寫程序,負責將更改的資料從資料庫緩衝區寫入資料檔案 smon 系統監控,檢查資料庫的狀態,恢復資料庫的例項 pmon 程序監控,負責oracle程序失敗時資源清理釋放 chpt 檢查點程序,每當緩衝區資料寫入檔案時,更新控制檔案的資料庫狀態資訊 ar...