學(xué)習(xí)概述Oracle Rdbms
Oracle還是比較常用的,于是我研究了一下Oracle Rdbms,在這里拿出來和大家分享一下,希望對大家有用。這里僅僅是為了以后的安全奠定一些基礎(chǔ),因?yàn)槲覀兒竺嬉玫剿鼈?。呵呵~!
1.Oracle所包含的組件:
在Oracle數(shù)據(jù)庫是指整個(gè) Oracle Rdbms環(huán)境,它包括以下組件:
◆Oracle 數(shù)據(jù)庫進(jìn)程和緩沖(實(shí)例)。
◆SYSTEM 表空間包含一個(gè)集中系統(tǒng)類目,它可以由一個(gè)或多個(gè)數(shù)據(jù)文件構(gòu)成。
◆其它由數(shù)據(jù)庫管理員 (DBA)(可選)定義的表空間,每個(gè)都由一個(gè)或多個(gè)數(shù)據(jù)文件構(gòu)成。
◆兩個(gè)以上的聯(lián)機(jī)恢復(fù)日志。
◆歸檔恢復(fù)日志(可選)。
◆其它文件(控制文件、Init.ora、Config.ora 等)。
每個(gè)Oracle數(shù)據(jù)庫都在一個(gè)中央系統(tǒng)類目和數(shù)據(jù)字典上運(yùn)行,它位于SYSTEM 表空間。
2.關(guān)于“日志”
Oracle數(shù)據(jù)庫使用幾種結(jié)構(gòu)來保護(hù)數(shù)據(jù):數(shù)據(jù)庫后備、日志、回滾段和控制文件。下面我們將大體上了解一下作為主要結(jié)構(gòu)之一的“日志”:
每一個(gè)Oracle數(shù)據(jù)庫實(shí)例都提供日志,記錄數(shù)據(jù)庫中所作的全部修改。每一個(gè)運(yùn)行的Oracle數(shù)據(jù)庫實(shí)例相應(yīng)地有一個(gè)在線日志,它與Oracle后臺進(jìn)程LGWR一起工作,立即記錄該實(shí)例所作的全部修改。歸檔(離線)日志是可選擇的,一個(gè)Oracle數(shù)據(jù)庫實(shí)例一旦在線日志填滿后,可形成在線日志歸檔文件。歸檔的在線日志文件被唯一標(biāo)識并合并成歸檔日志。
◆關(guān)于在線日志:一個(gè)Oracle數(shù)據(jù)庫的每一實(shí)例有一個(gè)相關(guān)聯(lián)的在線日志。一個(gè)在線日志由多個(gè)在線日志文件組成。在線日志文件(online redo log file)填入日志項(xiàng)(redo entry),日志項(xiàng)記錄的數(shù)據(jù)用于重構(gòu)對數(shù)據(jù)庫所作的全部修改。
◆關(guān)于歸檔日志:Oracle要將填滿的在線日志文件組歸檔時(shí),則要建立歸檔日志(archived redo log)。其對數(shù)據(jù)庫備份和恢復(fù)有下列用處:
<1>數(shù)據(jù)庫后備以及在線和歸檔日志文件,在操作系統(tǒng)和磁盤故障中可保證全部提交的事物可被恢復(fù)。
<2>在數(shù)據(jù)庫打開和正常系統(tǒng)使用下,如果歸檔日志是***保存,在線后備可以進(jìn)行和使用。
數(shù)據(jù)庫可運(yùn)行在兩種不同方式下:NOARCHIVELOG方式或ARCHIVELOG方式。數(shù)據(jù)庫在NOARCHIVELOG方式下使用時(shí),不能進(jìn)行在線日志的歸檔。如果數(shù)據(jù)庫在ARCHIVELOG方式下運(yùn)行,可實(shí)施在線日志的歸檔。
3.物理和邏輯存儲結(jié)構(gòu):
Oracle Rdbms是由表空間組成的,而表空間又是由數(shù)據(jù)文件組成的。表空間數(shù)據(jù)文件被格式化為內(nèi)部的塊單位。塊的大小,是由DBA在Oracle***次創(chuàng)建的時(shí)候設(shè)置的,可以在512到8192個(gè)字節(jié)的范圍內(nèi)變動(dòng)。當(dāng)一個(gè)對象在Oracle表空間中創(chuàng)建的時(shí)候,用戶用叫做長度的單位(初始長度((initial extent)、下一個(gè)長度(next extent)、最小長度(min extents)、以及***長度(max extents))來標(biāo)明該對象的空間大小。一個(gè)Oracle長度的大小可以變化,但是要包含一個(gè)由至少五個(gè)連續(xù)的塊構(gòu)成的鏈。
4.Oracle與Microsoft SQL Server比較下的聯(lián)網(wǎng)協(xié)議。
【編輯推薦】