使用块改变跟踪来提升增量备份的性能
增量备份的块改变跟踪功能,是通过记录每个数据文件中改变的块来提升备份的性能。
关于块改变跟踪
如果在主库或备库开启了块改变跟踪,则RMAN使用块改变跟踪文件为增量备份标识改变的块。
通过读取这个小的二进制的位图文件来确定哪些块被改变了,可以避免扫描被备份的数据文件的每个块。
块改变跟踪默认是禁用的。除非避免数据文件全部扫描所带来的好处是显著的,尤其是备份之间块的改变只占很小的一部分。
如果你的备份策略包括增量备份,则块改变跟踪是建议的。块改变跟踪不会改变用于执行增量备份的命令。
块改变跟踪文件在初始的配置之后不需要维护。
可以只在物理备用数据库上开启块改变跟踪,如果Oracle Active Data Guard许可是开启的。
(1)块改变跟踪文件的空间管理
跟踪文件维护位图标记备份之间数据文件的改变。数据库在每次备份之间执行位图转换。
Oracle数据库自动管理跟踪文件来维护最近的8次备份中块的改变。
在达到了8个位图的最大数量后,最老的位图会被覆盖来跟踪当前的改变。
第1个level 0增量备份扫描整个数据文件。
后面的增量备份使用块改变跟踪文件来扫描自上一次备份后被标记为改变的块。
一个增量备份可以被优化只有当它基于一个父备份,而这个父备份是在块跟踪文件中最老的位图开始之后被做的。
(其实从第一个level 1增量备份开始,就可以被优化)
当部署你的增量备份策略的时候,要考虑8位图限制。
例,如果在第7个差异增量备份之后,做了一个level 0增量备份,则块改变跟踪文件当前包含8个位图;
如果你创建了level 1累积增量备份,则RMAN不能优化备份,因为对应于父级level 0备份的位图被跟踪当前改变的位图覆盖了。
(2)块改变跟踪文件位置
整个数据库产生一个块改变跟踪文件。
默认这个文件被创建在DB_CREATE_FILE_DEST初始化参数指定的位置,是OMF文件。
也可以将改变跟踪文件放在你选择的任何位置,通过在开启块改变跟踪时指定它的名称。
Oracle不建议使用裸设备做为块改变跟踪文件的位置。
注意:在RAC环境中,改变跟踪文件必须位于从群集的所有结点都可以访问的共享存储上。
RMAN不支持备份和恢复块改变跟踪文件。
当数据库认为改变跟踪文件无效时,会重置改变跟踪文件。
如果还原和恢复整个数据库或它的子集,则数据库会重置块改变跟踪文件,并再次开始跟踪改变。
在你做了level 0增量备份后,下一个增量备份可以使用改变跟踪数据。
(3)块改变跟踪文件的大小
块改变跟踪文件的大小是与数据库的大小和开启的redo线程的数量成比例的。
块改变跟踪文件的大小可以随数据库的改变而增大或减小。大小与对数据库的更新频率无关。
通常单实例的块改变跟踪需要的空间是被跟踪的数据块大小的1/30000。
对于RAC环境,= 数据库大小 * 1/30000 * 开启的线程数量。
下面的因素可以会引起文件比这个预估的值大:
n 为承避免随着数据库的增长分配空间的开销,块跟踪文件初始为10M,新空间是以10M的增量被分配。
因此对于任何将近300G的数据库,文件大小不会小于10M;对于600G的数据库,文件不会小于20M。
n 对于每个数据文件,在块改变跟踪文件中最小要分配320K空间,而不管数据文件多大。
因此如果有大量的相对较小的数据文件,块改变跟踪文件要比具有少数的大的数据文件的数据库的块改变跟踪文件大。来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/17013648/viewspace-1087795/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/17013648/viewspace-1087795/