RMAN的改變跟蹤功能通過在改變跟蹤文件中記錄每一個數據文件發生改變的數據塊來提高增量備份的性能。如果改變跟蹤被啟用,RMAN使
RMAN的改變跟蹤功能通過在改變跟蹤文件中記錄每一個數據文件發生改變的數據塊來提高增量備份的性能。如果改變跟蹤被啟用,RMAN使用改變跟蹤文件來標識自上次增量備份以來發生改變的數據塊,這樣就能避免掃描每個數據文件的所有數據塊。
在啟用改變跟蹤后,第一次level 0級的增量備份仍然會掃描每個數據文件的所有數據塊,這時改變跟蹤文件不能反應數據塊的狀態。后續的增量備份將使用level 0級的增量備份作為父備份集這樣就可以利用改變跟蹤文件來進行增量備份。
使用改變跟蹤不會改變執行增量備份的命令,改變跟蹤本身在設置后通常需要較少的維護。
改變跟蹤默認情況下是禁用的,因為它在數據庫的正常操作期間會有一些小的性能開銷。然而,為了在備份期間對數據文件執行完全掃描,且在兩次備份期間只有少量數據塊發生改變時,使用改變跟蹤就是很有用的。如果你的備份策略使用增量備份,那么應該啟用改變跟蹤。
一旦對整個數據庫創建了改變跟蹤文件,默認情況下改變跟蹤文件所生成的目錄是由
db_create_file_dest參數來決定的。也可以在啟用改變跟蹤時指定改變跟蹤的文件名和存儲目錄。
注意:在RAC環境下,為了讓所有的節點都能使用改變跟蹤文件應該將改變跟蹤文件存儲在共享存儲中
Oracle保存足夠的改變跟蹤文件能讓增量備份使用最近8個增量備份作為它的父備份。
雖然RMAN不支持對改變跟蹤文件本身的備份和恢復,如果整修數據庫或部分需要還原和恢復,那么恢復對改變跟蹤沒有影響。在還原和恢復之后,改變跟蹤文件會被清除,并再次開始記錄數據塊的改變。在任何恢復之后下一次的增量備份都能夠使用改變跟蹤的數據。
啟用或禁用塊改變跟蹤
存儲塊改變跟蹤文件的目錄是由db_create_file_dest參數來設置的,下面的語句用來啟用塊改變跟蹤:
SQL> ALTER DATABASE ENABLE BLOCK CHANGE TRACKING;
還可以在啟用塊改變跟蹤時指定塊改變跟蹤文件創建的目錄
SQL> ALTER DATABASE ENABLE BLOCK CHANGE TRACKING
USING FILE '/mydir/rman_change_track.f' REUSE;
REUSE選項告訴Oracle會覆蓋已經存在的塊跟蹤文件
為了禁用塊改變跟蹤:
SQL> ALTER DATABASE DISABLE BLOCK CHANGE TRACKING;
如果塊改變跟蹤文件存儲在數據庫區域,當禁用改變跟蹤時會刪除。
SQL> alter database enable block change tracking using file '/u01/app/oracle/rman_change_trace.f' reuse;
Database altered.
檢查是否生成了改變跟蹤文件
[root@oracle11g oracle]# ls -lrt
total 11632
drwxr-xr-x 3 oracle oinstall 4096 Sep 5 08:47 10.2.0
drwxrwxr-x 3 oracle oinstall 4096 Sep 5 09:12 oradata
drwxr-x--- 3 oracle oinstall 4096 Sep 5 09:12 admin
drwxrwxr-x 3 oracle oinstall 4096 Sep 5 09:13 flash_recovery_area
-rw-r--r-- 1 oracle oinstall 2295 Nov 18 10:55 utlu112i_8.sql
-rw-r--r-- 1 oracle oinstall 10373 Nov 18 11:02 upgrade_info.log
drwxr-xr-x 3 root root 4096 Nov 18 21:00 11.2.0
drwxrwx--- 7 oracle oinstall 4096 Nov 18 21:37 oraInventory
drwxrwxr-x 11 oracle oinstall 4096 Nov 18 21:37 diag
drwxr-xr-x 2 oracle oinstall 4096 Nov 18 21:39 checkpoints
drwxr-x--- 5 oracle oinstall 4096 Nov 19 18:55 cfgtoollogs
-rw-r--r-- 1 oracle oinstall 3261 Nov 23 21:24 upchk.log
-rw-r--r-- 1 oracle oinstall 2237 Nov 26 11:55 downgrade.log
-rw-r----- 1 oracle oinstall 11600384 Jan 26 21:32 rman_change_trace.f
禁用塊改變跟蹤:
SQL> alter database disable block change tracking;
Database altered.
檢查是否刪除了生成的改變跟蹤文件
[root@oracle11g oracle]# ls -lrt
total 284
drwxr-xr-x 3 oracle oinstall 4096 Sep 5 08:47 10.2.0
drwxrwxr-x 3 oracle oinstall 4096 Sep 5 09:12 oradata
drwxr-x--- 3 oracle oinstall 4096 Sep 5 09:12 admin
drwxrwxr-x 3 oracle oinstall 4096 Sep 5 09:13 flash_recovery_area
-rw-r--r-- 1 oracle oinstall 2295 Nov 18 10:55 utlu112i_8.sql
-rw-r--r-- 1 oracle oinstall 10373 Nov 18 11:02 upgrade_info.log
drwxr-xr-x 3 root root 4096 Nov 18 21:00 11.2.0
drwxrwx--- 7 oracle oinstall 4096 Nov 18 21:37 oraInventory
drwxrwxr-x 11 oracle oinstall 4096 Nov 18 21:37 diag
drwxr-xr-x 2 oracle oinstall 4096 Nov 18 21:39 checkpoints
drwxr-x--- 5 oracle oinstall 4096 Nov 19 18:55 cfgtoollogs
-rw-r--r-- 1 oracle oinstall 3261 Nov 23 21:24 upchk.log
-rw-r--r-- 1 oracle oinstall 2237 Nov 26 11:55 downgrade.log
SQL> select filename from v$block_change_tracking;
FILENAME
--------------------------------------------------------------------------------
/u01/app/oracle/rman_change_trace.f
2.關閉數據庫.
SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
3.使用操作系統命令將塊改變跟蹤文件移動到新的位置
[root@oracle11g oracle]# mv rman_change_trace.f rman_change_trace_new.f
4.mount數據庫,更改塊改變跟蹤文件
SQL> startup mount
ORACLE instance started.
聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com