oracle联机热备份的原理
2007-05-09 12:11:56 来源:WEB开发网跟level 0备份时的SCN做比较(备份记录中的Ckp SCN),来确定这个块是否需要备份。
所以扫描整个数据文件是不可避免的 !
这是传统的rman做增量备份
在10g中rman做增量备份不再需要扫描整个数据文件了
10g引入的新特性 block change tracking:
Block change tracking进程记录自从上一次备份以来数据块的变化,并把这些信息记录在跟踪文件中。
RMAN使用这个文件判断增量备份中需要备份的变更数据。这极大的促进了备份性能,
RMAN可以不再扫描整个文件以查找变更数据。
RMAN's change tracking feature for incremental backups improves incremental
backup performance by recording changed blocks in each datafile in a change tracking
file. If change tracking is enabled, RMAN uses the change tracking file to identify
changed blocks for incremental backup, thus avoiding the need to scan every block in
the datafile.
估计是使用的位图文件做的记录!
附:
有兴趣的可以看看dump的数据块
通过下面的查询找一个表对应的数据块
SQL> select file_id,block_id,blocks
2 from dba_extents
3 where segment_name='EMPLOYEES';
FILE_ID BLOCK_ID BLOCKS
---------- ---------- ----------
5 81 8
dump一个块到udump的trc文件
SQL> alter system dump datafile 5 block 81;
System altered.
在udump目录找到对应的trc文件,找到dump那段
Start dump data blocks tsn: 6 file#: 5 minblk 81 maxblk 81
buffer tsn: 6 rdba: 0x01400051 (5/81)
scn: 0x0000.00086c4d seq: 0x01 flg: 0x04 tail: 0x4b502001
后面省略了
scn: 0x0000.00086c4d是16进制你可以换算过来552013
你可以尝试做一下修改,不过一定要保证对应的块被修改了,并且被写了,才能反映出来。
- ››oracle 中 UPDATE nowait 的使用方法
- ››Oracle ORA-12560解决方法
- ››Oracle 10g RAC 常用维护命令
- ››Oracle如何在ASM中定位文件的分布
- ››Oracle的DBMS_RANDOM.STRING 的用法
- ››oracle 外部表导入时间日期类型数据,多字段导入
- ››Oracle中查找重复记录
- ››oracle修改用户登录密码
- ››Oracle创建删除用户、角色、表空间、导入导出等命...
- ››Oracle中登陆时报ORA-28000: the account is lock...
- ››Oracle数据库在配置文件中更改最大连接数
- ››Oracle中在pl/sql developer修改表的两种方式
更多精彩
赞助商链接