在 Oracle 9 中增量备份需要扫描整个数据库的数据块才能知道哪些数据块发生了变化变化,这是一个代价很大,时将很长的过程,而且由于增量备份形成多个不同的备份集,使恢复变得更加不可靠,所以增量备份在版本 9 中不被推荐使用;在10g中,增量备份作了很大的改进, 不需要扫描所有数据块就能得知哪些数据块发生变化,从而大大提升备份效率。但这些却以牺牲磁盘 I/O 为代价,所以在 OLTP 事务系统中还得衡量是否愿意以 I/O 为代价来保证安全及高可用性。 10g 还支持增量合并,增量备份可支持 7 级增量。
小插一段:关于 Block change tracking
Block Change Tracking 是 Oracle 10g 的一个新特性, Block Change Tracking 进程记录自从上一次备份以来数据块的变化,并把这些信息记录在跟踪文件中。 RMAN 使用这个文件判断增量备份中需要备份的变更数据。这极大的促进了备份性能, RMAN 可以不再扫毛整个文件以查找变更数据。
为此, Oracle 引入了一个新的后台进程, CTWR ( Change Tracking Writer ),用于记录变化的块并将变化写入相应的日志文件中。
启用跟踪:
alter database enable block change tracking using file ‘D:\oracle\product\10.2.0\flash_recovery_area\block_tracking.log‘
--如果是采用OMF文件管理方式,则不需要添加using file子句。
查询当前设置: select filename,status,bytes from v$block_change_tracking;
关闭跟踪: alter database disable block change tracking;
2.备份策略及恢复
以 RMAN 多级增量备份作为备份策略例子:
增量备份都需要一个 0 级备份来作为基础, 0 级备份与全备份的区别在于 0 级可以用来增量恢复,而全备份则不可以。
全备份脚本
run{ allocate channel c1 type disk; allocate channel c2 type disk; allocate channel c3 type disk; backup full tag ‘dbfull‘ format ‘/u01/oradata/backup/full%u_%s_%p‘ database include current controlfile; sql ‘alter system archive log current‘; backup filesperset 3 format ‘/u01/oradata/backup/arch%u_%s_%p‘ archivelog all delete input; #备份归档可选,可以单独定期备份 release channel c1; release channel c2; release channel c3; }
零级备份脚本
run{ allocate channel c1 type disk; allocate channel c2 type disk; allocate channel c3 type disk; backup incremental level 0 tag ‘db0‘ format ‘/u01/oradata/backup/db0%u_%s_%p‘ database skip readonly; sql ‘alter system archive log current‘; backup filesperset 3 format ‘/u01/oradata/backup/arch%u_%s_%p‘ archivelog all delete input; #备份归档可选,可以单独定期备份 release channel c1; release channel c2; release channel c3; }
一级备份脚本
run{ allocate channel c1 type disk; allocate channel c2 type disk; allocate channel c3 type disk; backup incremental level 1 tag ‘db1‘ format ‘/u01/oradata/backup/db1%u_%s_%p‘ database skip readonly; sql ‘alter system archive log current‘; backup filesperset 3 format ‘/u01/oradata/backup/arch%u_%s_%p‘ archivelog all delete input; #备份归档可选,可以单独定期备份 release channel c1; release channel c2; release channel c3; }
Oracle 差异、增量、零级备份
标签:family 应用 color 设置 arc 新特性 方式 inpu %s
查看更多关于Oracle 差异、增量、零级备份的详细内容...