然而在版本10g之前,遞增備份需要對(duì)整個(gè)數(shù)據(jù)文件進(jìn)行掃描以確定哪些數(shù)據(jù)塊發(fā)生了改變。對(duì)于大型數(shù)據(jù)庫而言,盡管節(jié)約了空間,但其時(shí)間復(fù)雜度并不比完全備份好很多。
改變跟蹤技術(shù)(有時(shí)也稱塊改變跟蹤技術(shù))通過在一個(gè)獨(dú)立的跟蹤文件中記錄發(fā)生改變的數(shù)據(jù)塊以解決上述問題,這些改變由一個(gè)后臺(tái)進(jìn)程實(shí)時(shí)地寫入文件。
最初的遞增備份仍需要進(jìn)行一次完整的掃描。其后,備份時(shí)通過參考改變跟蹤文件,可以直接訪問需要備份的塊。
為了創(chuàng)建并激活改變跟蹤文件,首先確保數(shù)據(jù)庫是打開或可被訪問,然后運(yùn)行如下數(shù)據(jù)庫改變(alter database)命令:
alter database
enable block change tracking
using file <pathname>;
為改變跟蹤文件在操作系統(tǒng)中的存儲(chǔ)位置。(如果你激活了oracle管理文件,則using從句是可選的,改變跟蹤文件將創(chuàng)建于db_create_file_dest目錄下。)
無論該文件的路徑位于哪個(gè)位置,其最初大小都是10mb,且根據(jù)需要每次增加10mb。
使用改變跟蹤技術(shù)將影響系統(tǒng)性能,因此除非你需要使用rman遞增備份功能,否則你最好將其設(shè)為不可用。