引用百度文库:
传统的增量备份方法为了获得需要备份的数据块,必须对数据文件中的所有数据块进行遍历,
虽然增量备份减少了备份文件的体积,但是备份效率并不高。
但是10G后 这一情况得到了改善
10g 的新特性10G ORACLE提供了一个特殊的文件叫BLOCK CHANGE TRACKING FILE
每当数据块发生改变时,相关信息同时纪录到这个文件中,这样当RMAN进行增量备份时,
从这个文件就可以获得需要备份的数据块列表,而不必对所有数据块进行遍历,因此提高了增量备份的效率
默认是关闭的,
1. 怎么启用block change tracking呢?
==========================================================================================
SQL> alter database enable block change tracking;
也可以通过下面的命令手工指定TRACKING FILE的文件位置SQL> alter database enable block change tracking
using file '/u01/oradata/gbminer/chg01.dbf';
RAC 特殊情况处理
1. 必须手动指定位置
2. 位置必须在共享存储上
SQL> alter database enable block change tracking;
alter database enable block change tracking
*
ERROR at line 1:
ORA-19773: must specify change tracking file name
SQL> alter database enable block change tracking using file '
+DATA/wydb/change01.dbf';
Database altered.
2. 怎么查看状态
============================================================================================
SQL> col FILENAME for a45
SQL> select * from
v$block_change_tracking;
STATUS FILENAME BYTES
---------- --------------------------------------------- ----------
ENABLED +DATA/wydb/change01.dbf 11599872
3. 怎么查看
进程============================================================================================
启用block change tracking后,ORACLE会启动一个CTWR进程,这个进程负责跟踪数据变化。
ps -ef | grep ctwr可以查到
[oracle@oracle01 ~]$ ps -efl|grep ctwr
0 S oracle 19610 1 0 75 0 - 463706 stext 13:34 ? 00:00:00 ora_ctwr_wydb1
[oracle@oracle02 ~]$ ps -efl|grep ctwr
0 S oracle 3099 1 0 75 0 - 463688 stext 13:35 ? 00:00:00 ora_ctwr_wydb2
4. 怎么关闭
================================================================================================
SQL> alter database
disable block change tracking;
Database altered.
SQL> select * from v$block_change_tracking;
STATUS FILENAME BYTES
---------- --------------------------------------------- ----------
DISABLED
5.
改变trace 文件的位置================================================================================================
1. SELECT filename FROM V$BLOCK_CHANGE_TRACKING;
2.SHUTDOWN IMMEDIATE
3.mv Change Tracking File
4.startup mount
5 ALTER DATABASE RENAME FILE 'ora_home/dbs/change_trk.f' TO '/new_disk/change_trk.f6、ALTER DATABASE OPEN;
6. 评估 trace 文件的大小
================================================================================================
Change Tracking File大小跟REDO现成数和数据库大小成正比的,但跟更新频率没有关系。
典型, 跟踪文件需要的空间是被跟踪数据块大小的
1/3万.那我问大家,300G的数据库,改变跟踪文件多大? 是10M
注意:Change Tracking File大小跟我们的内存分配一样,是有颗粒的 它的颗粒是10Mchange tracking file大小从10MB开始,每10M增长1次.因此,接近300G的数据文件需要10M的跟踪文件,接近600G的数据文件需要20MB跟踪文件。
对于每个数据文件,最小分配跟踪文件是320K.
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/27042095/viewspace-748141/
,如需转载,请注明出处,否则将追究法律责任。