Rman增量备份概念及块跟踪的设置

Rman增量备份概念及块跟踪的设置

10年积累的网站设计、成都网站制作经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先做网站设计后付款的网站建设流程,更有岳普湖免费网站建设让你可以放心的选择与我们合作。
























rman 的增量备份

差异增量(Differential)

备份低级别或者相同级别备份以来变化的所有数据块,顾名思议,也就是要备前期备份以来的差异数据块

Rman增量备份概念及块跟踪的设置















累积增量(Cumulative)

是备份n-1级别(上级)或更低级别以来变化的所有数据块
Rman增量备份概念及块跟踪的设置

使用增量备份时,如何缩短RMAN 备份时间

Block ChangeTracking

    Block ChangeTracking是Oracle 10g里推出的特性。 Block change tracking会记录data file里每个block的update信息,这些tracking信息保存在tracking文件里。当启动block change tracking后,RMAN使用trackingfile里的信息,只读取改变的block信息,而不用在对整个data file进行扫描,从而提高了RMAN备份的性能。

block change tracking file是bitmap file。

默认是禁用Block change tracking的,如果使用增量备份,那么建议开启block change tracking。启用BCT后,不需要其他的维护操作。

第一个0级的增量备份扫描整个datafile。随后的增量备份使用block change tracking file的信息,只扫描自上次备份以来被标记为change的block。

block change tracking文件是针对整个数据库,默认情况下,change tracking file会作为Oracle managed file,在DB_CREATE_FILE_DEST指定的目录下创建。可以放到放到其他的目录。 Oracle不建议使用rawdevice来存放change tracking file.如果是RAC环境,change tracking file必须放在共享设备上。

    RMAN不支持对change tracking file的备份与恢复。当数据检测到change tracking file无效时,就会reset changetracking file。如果我们还原了数据库,那么数据库也会reset block change tracking,并从新进行tracking。

    block change tracking file的大小和数据库的大小及 enabled threads of redo的数量有关系,tracking file的大小会根据数据库大小的变化和变化。和更新频率没有关系。典型的,单实例下大约DB的1/30000的block会把track。如果是RAC环境,在乘以threads。

以下因素会导致file超过估计值:

(1)为了避免tracking file占用太多的空间,初始值是10M,然后每次增加10M,如果数据库接近300G,那么trackingfile不能小于10M,如果接近600G,不能小于20M。

(2)每个datafile,在tracking file里最少需要分配320k的空间,所以如果有大量的小data file, change tracking file也会相对较大。

启用Block Change Tracking

数据库在open或者 mounted状态都可以启用block change tracking.

1.检查DB_CREATE_FILE_DEST参数配置,

DB_CREATE_FILE_DEST参数用来指定默认的Oracle Managed datafiles的位置。

在没有指定DB_CREATE_ONLINE_LOG_DEST_n参数的情况下,这个参数也可以用来作为

Oracle-managed control files和online redo logs的默认位置。

Rman增量备份概念及块跟踪的设置



SYS@hyyk> show parameter db_create_file_dest

如果使用文件系统目录作为默认的位置,那么这个目录必须是已经存在的,Oracle不会创建这个目录。并且Oracle对这个目录有足有的操作的权限。使用OMF管理时,在这个目录下生成文件每个名称都是唯一的,这个文件也称为Oracle-Manager file。

2.设置DB_CREATE_FILE_DEST

SYS@hyyk> alter system set db_create_file_dest = '/u01/app/oracle/oradata/hyyk/' scope=both sid='*';

3.验证该参数


SYS@hyyk> show parameter db_cre
ate_file_dest

Rman增量备份概念及块跟踪的设置





4.启用Block change tracking

SYS@hyyk> alter database enable block change tracking;

5.可以使用v$block_change_tracking视图查看tracking启动情况。

col status format a8

col filename format a60

SYS@hyyk> select status, filename from v$block_change_tracking;

Rman增量备份概念及块跟踪的设置




禁用Block Change Tracking

SQL> alter database disable block change tracking;

更改change tracking

可以使用alter database rename语句来修改change tracking file文件的位置,该命令会更新控制文件里的信息,命令必须在mount下执行,如果DB不能shutdown,那么可以先disable,然后指定新的位置在启动,但是这样会丢失以前在tracking file里的数据。

1.查看当前文件的位置

SQL> select status, filename from v$block_change_tracking;

    

2.如果可能,关闭数据库

SQL> shutdown immediate

如果可以关闭数据库,跳过如下的sql继续操作

如果不能关闭,就执行如下的SQL并忽略第3步以后的步骤。

SQL> alter database disable block changetracking;

SQL> alter database enable block change tracking using file 'new_location';

注意:这里是禁用bct,在启动时更改bct位置,这种情况,会丢失所有的bct文件的内容。在下次执行0级增量备份时会扫描整个数据文件。

3.在操作系统级别移动change tracking file文件到新的位置。这个是在关闭数据库的前提下进行。

mv /u01/app/oracle/oradata/hyyk/block_change_tracking.f /u01/ block_change_tracking.f

4.启动数据库到mount状态,移动change tracking文件位置。

SQL> startup mount

SQL> alter database rename file '/u01/app/oracle/oradata/hyyk/block_change_tracking.f' to '/u01/ block_change_tracking.f';.

5.打开数据库,验证

SQL> alter database open;

SQL> select status, filename from v$block_change_tracking;


名称栏目:Rman增量备份概念及块跟踪的设置
浏览地址:http://azwzsj.com/article/ihpsie.html