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