【环境】
AIX(5300-08)、Oracle10g(10.2.0.1.0-64bit)
【目标】
由于生产环境数据量较大,欲加快rman备份的速度
【方法】
启动块跟踪
【操作】
SQL> alter database enable block changetracking using file '/home/oracle/block.trc';
Database altered.
SQL> select filename fromv$block_change_tracking;
FILENAME
--------------------------------------------------------------------------------
/home/oracle/block.trc
----如果想要关闭块跟踪,执行命令
SQL>alter database disable block changetracking;
【说明】
因现场情况下做的是增量备份,每次在做增量备份时,数据库会去查询哪些数据块发生了变化。oracle10g之前采取的是扫描所有的块,即每次做增量备份之前都会发起全块扫描的操作。将所有的块扫描一遍再得出哪些数据块发生了变化,由于现场存在很多大的数据文件,这样下来耗时将会很长。oracle10g之后,添加了块跟踪技术,如果某个块发生变化,会把变化信息写入到一个日志中去,这样再做增量备份时,直接通过读取日志便会得出哪些块发生了变化,避免了全块的扫描,从而有效的节省了时间的消耗。缺点是会消耗一部分资源,但对于备份速度的提升之大,相比较资源消耗较少,因此可以采用块跟踪策略。
--------------------------------------推荐阅读 --------------------------------------
--------------------------------------分割线 --------------------------------------