實(shí)現(xiàn)Oracle遞增備份歸功于8.0的引進(jìn)?
我們大家都知道Oracle 8.0已可以恢復(fù)管理(RMAN),可以說(shuō)在一定程度上真正的實(shí)現(xiàn)了Oracle遞增備份。在RMAN開(kāi)發(fā)之前,Oracle數(shù)據(jù)庫(kù)輸出也是能夠遞增進(jìn)行,但一旦某個(gè)表的任何一塊發(fā)生改變,整個(gè)表都需要重寫(xiě)。
RMAN遞增備份則僅需在給定的數(shù)據(jù)文件中重寫(xiě)被修改的部分,由此可大大節(jié)約了空間。
然而在版本10g之前,遞增備份需要對(duì)整個(gè)數(shù)據(jù)文件進(jìn)行掃描以確定哪些數(shù)據(jù)塊發(fā)生了改變。對(duì)于大型數(shù)據(jù)庫(kù)而言,盡管節(jié)約了空間,但其時(shí)間復(fù)雜度并不比完全備份好很多。
Oracle 8.0引進(jìn)了恢復(fù)管理(RMAN),***實(shí)現(xiàn)了真正的Oracle遞增備份。在RMAN之前,數(shù)據(jù)庫(kù)輸出也能夠遞增進(jìn)行,但一旦某個(gè)表的任何一塊發(fā)生改變,整個(gè)表都需要重寫(xiě)。RMAN遞增備份則僅需在給定的數(shù)據(jù)文件中重寫(xiě)被修改的部分,由此可大大節(jié)約了空間。
然而在版本10g之前,遞增備份需要對(duì)整個(gè)數(shù)據(jù)文件進(jìn)行掃描以確定哪些數(shù)據(jù)塊發(fā)生了改變。對(duì)于大型數(shù)據(jù)庫(kù)而言,盡管節(jié)約了空間,但其時(shí)間復(fù)雜度并不比完全備份好很多。
改變跟蹤技術(shù)(有時(shí)也稱(chēng)塊改變跟蹤技術(shù))通過(guò)在一個(gè)獨(dú)立的跟蹤文件中記錄發(fā)生改變的數(shù)據(jù)塊以解決上述問(wèn)題,這些改變由一個(gè)后臺(tái)進(jìn)程實(shí)時(shí)地寫(xiě)入文件。
最初的Oracle遞增備份仍需要進(jìn)行一次完整的掃描。其后,備份時(shí)通過(guò)參考改變跟蹤文件,可以直接訪問(wèn)需要備份的塊。
為了創(chuàng)建并激活改變跟蹤文件,首先確保數(shù)據(jù)庫(kù)是打開(kāi)或可被訪問(wèn),然后運(yùn)行如下數(shù)據(jù)庫(kù)改變(ALTER DATABASE)命令:
- ALTER DATABASE
- ENABLE BLOCK CHANGE TRACKING
- USING FILE ;
為改變跟蹤文件在操作系統(tǒng)中的存儲(chǔ)位置。(如果你激活了Oracle管理文件,則USING從句是可選的,改變跟蹤文件將創(chuàng)建于DB_CREATE_FILE_DEST目錄下。)
無(wú)論該文件的路徑位于哪個(gè)位置,其最初大小都是10MB,且根據(jù)需要每次增加10MB。
使用改變跟蹤技術(shù)將影響系統(tǒng)性能,因此除非你需要使用RMANOracle遞增備份功能,否則你***將其設(shè)為不可用(缺省設(shè)置)。
文章出自: http://www.programbbs.com/doc/class10-2.htm
【編輯推薦】
- Oracle sql 性能如何進(jìn)行調(diào)整
- Oracle sql 性能的優(yōu)化調(diào)整的2大步驟
- 對(duì)Oracle SQL相同語(yǔ)句的解析
- Oracle數(shù)據(jù)庫(kù)和DB2取前10條記錄的實(shí)際對(duì)比
- Oracle數(shù)據(jù)庫(kù)與DM的強(qiáng)制訪問(wèn)的不同之處