块变更跟踪(Block change tracking)
在进行增量备份的时候,希望备份能快一些,这可以通过启用块变更跟踪来实现。
Block change tracking 依赖于启动额外一个后台进程:CTWR(Change Tracking Writer,变更跟踪写入器)。启用了块变更跟踪,RMAN执行增量备份的时读取变更跟踪文件以确定那些块需要备份。这比扫描整个文件要快的多。
变更跟踪文件在启用block change tracking的时候已经指定。默认位置是DB_CREATE_FILE_DEST目录。在OS中,文件由oracle 自动创建和删除。文件的初始大小为10MB,并将以10MB的增量增长,除非数据库时百万兆字节的,否则10M就够了。变更跟踪文件是位图格式的,每位包括32个数据块。
启动变更跟踪会有一个足底性能开销,但经验表明这并不重要。
开启变更跟踪的命令:
SQL> alter database enable block change tracking using file '/oracle/oradata/testdb/change_tracking.dbf';
确定启动了CTWR进程:
SQL> select program from v$process where program like '%CTWR%';
PROGRAM
------------------------------------------------
oracle@oracledb (CTWR)
查询变更跟踪的开启信息机跟踪