Oracle10g新增BLOCK CHANGE TRACKING功能
上一篇 / 下一篇 2007-12-28 00:00:00 / 个人分类:ORACLE
Oracle10g新增了记录数据块变化的功能,显著的提高了增量备份的效率。
AmH#U'a8E3r^8hg0
对于增量备份,Rman需要比较数据文件中所有的BLOCK,来确认这个BLOCK是否需要进行备份:
[oracle@testzone ~]$ sqlplus ndmain
SQL*Plus: Release 10.2.0.3.0 - Production on 星期五 12月 28 14:26:45 2007
Copyright (c) 1982, 2006, Oracle. All Rights Reserved.
输入口令:
连接到: ITPUB个人空间x*kVPk,`
Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - 64bit ProductionITPUB个人空间:P'Lm2Z { x8Qn
With the Partitioning, OLAP and Data Mining options
SQL> select default_tablespace from user_users;
DEFAULT_TABLESPACE
!O.i+VDrS Q0------------------------------ITPUB个人空间/hPK-D)Zq_
NDMAIN
SQL> create table t_test1 (id number);
表已创建。
SQL> exit从 Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - 64bit ProductionITPUB个人空间$NM{)w A}9s8g8u+q
With the Partitioning, OLAP and Data Mining options 断开
Extt:LT)_0[oracle@testzone ~]$ exitITPUB个人空间y gl4|_H-o#vik ?
exit主机命令完成
RMAN> backup incremental level 1 tablespace ndmain;
启动 backup 于 28-12月-07使用通道 ORA_DISK_1通道 ORA_DISK_1: 启动增量级别 1 数据文件备份集通道 ORA_DISK_1: 正在指定备份集中的数据文件输入数据文件 fno=00011 name=/data/oradata/testzj/ndmain01.dbf输入数据文件 fno=00012 name=/data/oradata/testzj/ndmain02.dbf输入数据文件 fno=00013 name=/data/oradata/testzj/ndmain03.dbf输入数据文件 fno=00014 name=/data/oradata/testzj/ndmain04.dbf输入数据文件 fno=00015 name=/data/oradata/testzj/ndmain05.dbf通道 ORA_DISK_1: 正在启动段 1 于 28-12月-07通道 ORA_DISK_1: 已完成段 1 于 28-12月-07段句柄=/data/backup/05j4o7ah_1_1 标记=TAG20071228T142728 注释=NONE通道 ORA_DISK_1: 备份集已完成, 经过时间:00:04:35完成 backup 于 28-12月-07
RMAN> list backup;
备份集列表ITPUB个人空间S(?2AV5uDOm
===================
BS 关键字 类型 LV 大小 设备类型 经过时间 完成时间 ITPUB个人空间/G{3LwJ
------- ---- -- ---------- ----------- ------------ ----------
.c4`u
A1sT L04 Incr 0 11.15G DISK 00:06:22 28-12月-07
9^6M)}
\o8\/W%n.h;y0 BP 关键字: 4 状态: AVAILABLE 已压缩: NO 标记: TAG20071228T141945段名:/data/backup/04j4o6s1_1_1
c&C^.W7I([6x0 备份集 4 中的数据文件列表
7WE.N;i
q;Za0oq"_0 文件 LV 类型 Ckp SCN Ckp 时间 名称ITPUB个人空间e$sC/g:\lx+H
---- -- ---- ---------- ---------- ----
2qNeeaa0 11 0 Incr 5479421905 28-12月-07 /data/oradata/testzj/ndmain01.dbf
F+Q?`NTI(F O0 12 0 Incr 5479421905 28-12月-07 /data/oradata/testzj/ndmain02.dbf
6X_9gY;x#S r;fC _0 13 0 Incr 5479421905 28-12月-07 /data/oradata/testzj/ndmain03.dbf
$T
m
[rnu
Q*R0 14 0 Incr 5479421905 28-12月-07 /data/oradata/testzj/ndmain04.dbf
&F4N8a)I$~0 15 0 Incr 5479421905 28-12月-07 /data/oradata/testzj/ndmain05.dbf
BS 关键字 类型 LV 大小 设备类型 经过时间 完成时间 ITPUB个人空间C5~vg2iT
r`
------- ---- -- ---------- ----------- ------------ ----------
Y5NW/S$qTG1E-i05 Incr 1 88.00K DISK 00:04:26 28-12月-07
%@Jw%Q`D0 BP 关键字: 5 状态: AVAILABLE 已压缩: NO 标记: TAG20071228T142728段名:/data/backup/05j4o7ah_1_1ITPUB个人空间!de3b`5K
备份集 5 中的数据文件列表
%^%q,sxP7I`%e"Q0 文件 LV 类型 Ckp SCN Ckp 时间 名称ITPUB个人空间d \d#_QMu?s
---- -- ---- ---------- ---------- ----
4]![.Q#z'p8lagY0 11 1 Incr 5479422221 28-12月-07 /data/oradata/testzj/ndmain01.dbfITPUB个人空间_[E e5O'c[w,b
12 1 Incr 5479422221 28-12月-07 /data/oradata/testzj/ndmain02.dbfITPUB个人空间+lPk#v8I'W
13 1 Incr 5479422221 28-12月-07 /data/oradata/testzj/ndmain03.dbfITPUB个人空间Hj_"TV
Wbk8|0f
14 1 Incr 5479422221 28-12月-07 /data/oradata/testzj/ndmain04.dbf
.X&U7[aW-F0 15 1 Incr 5479422221 28-12月-07 /data/oradata/testzj/ndmain05.dbf
上面这个例子中,LEVEL 0增量备份了11个G,用时6分22秒,而后面的增量只有88K,却仍然花费了4分26秒,效率低的很。
而采用10g的新特性BLOCK CHANGE TRACKING:
RMAN> DELETE NOPROMPT BACKUP;
使用通道 ORA_DISK_1
备份段列表
G#l|zUU'j0BP 关键字 BS 关键字 Pc# Cp# 状态 设备类型段名称ITPUB个人空间-R3\.kH-RO6O{
------- ------- --- --- ----------- ----------- ----------
7L-|2s@Dp d;Ap!G04 4 1 1 AVAILABLE DISK /data/backup/04j4o6s1_1_1
[A;a4M"r)Vt05 5 1 1 AVAILABLE DISK /data/backup/05j4o7ah_1_1已删除备份段备份段 handle=/data/backup/04j4o6s1_1_1 recid=4 stamp=642521985已删除备份段备份段 handle=/data/backup/05j4o7ah_1_1 recid=5 stamp=642522449
E3`D]AMc GI*D02 对象已删除
)t
CA#JK1{0RMAN> EXIT
恢复管理器完成。
2E2UaN4A0[oracle@testzone ~]$ sqlplus "/ as sysdba"
SQL*Plus: Release 10.2.0.3.0 - Production on 星期五 12月 28 14:38:11 2007
Copyright (c) 1982, 2006, Oracle. All Rights Reserved.
连接到: ITPUB个人空间t~'gkj8L7QS
Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - 64bit Production
2CAV A@'[b0With the Partitioning, OLAP and Data Mining options
SQL> alter database enable block change tracking using file '/data/backup/track.trc';
数据库已更改。
SQL> exit从 Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - 64bit Production
`QbD1Qd4\ jw$J-S0With the Partitioning, OLAP and Data Mining options 断开
8^,u
L
~$dx0[oracle@testzone ~]$ rman target /
恢复管理器: Release 10.2.0.3.0 - Production on 星期五 12月 28 14:38:47 2007
Copyright (c) 1982, 2005, Oracle. All rights reserved.
连接到目标数据库: TESTZJ (DBID=3397373484)
RMAN> backup incremental level 0 tablespace ndmain;
启动 backup 于 28-12月-07使用目标数据库控制文件替代恢复目录分配的通道: ORA_DISK_1通道 ORA_DISK_1: sid=139 devtype=DISK通道 ORA_DISK_1: 启动增量级别 0 数据文件备份集通道 ORA_DISK_1: 正在指定备份集中的数据文件输入数据文件 fno=00011 name=/data/oradata/testzj/ndmain01.dbf输入数据文件 fno=00012 name=/data/oradata/testzj/ndmain02.dbf输入数据文件 fno=00013 name=/data/oradata/testzj/ndmain03.dbf输入数据文件 fno=00014 name=/data/oradata/testzj/ndmain04.dbf输入数据文件 fno=00015 name=/data/oradata/testzj/ndmain05.dbf通道 ORA_DISK_1: 正在启动段 1 于 28-12月-07通道 ORA_DISK_1: 已完成段 1 于 28-12月-07段句柄=/data/backup/06j4o80b_1_1 标记=TAG20071228T143907 注释=NONE通道 ORA_DISK_1: 备份集已完成, 经过时间:00:06:25完成 backup 于 28-12月-07
RMAN> host;
[oracle@testzone ~]$ sqlplus ndmain
SQL*Plus: Release 10.2.0.3.0 - Production on 星期五 12月 28 14:45:54 2007
Copyright (c) 1982, 2006, Oracle. All Rights Reserved.
输入口令:
连接到: ITPUB个人空间Pz%V
Eg0~
Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - 64bit ProductionITPUB个人空间/~(S(R:R$fQ7?
With the Partitioning, OLAP and Data Mining options
SQL> create table t_test2 (id number);
表已创建。
SQL> exit从 Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - 64bit Production
,fD \f3B0With the Partitioning, OLAP and Data Mining options 断开ITPUB个人空间-KU|)C]
[oracle@testzone ~]$ exit
.U]cc+i.d%F0exit主机命令完成
RMAN> backup incremental level 1 tablespace ndmain;
启动 backup 于 28-12月-07使用通道 ORA_DISK_1通道 ORA_DISK_1: 启动增量级别 1 数据文件备份集通道 ORA_DISK_1: 正在指定备份集中的数据文件输入数据文件 fno=00011 name=/data/oradata/testzj/ndmain01.dbf输入数据文件 fno=00012 name=/data/oradata/testzj/ndmain02.dbf输入数据文件 fno=00013 name=/data/oradata/testzj/ndmain03.dbf输入数据文件 fno=00014 name=/data/oradata/testzj/ndmain04.dbf输入数据文件 fno=00015 name=/data/oradata/testzj/ndmain05.dbf通道 ORA_DISK_1: 正在启动段 1 于 28-12月-07通道 ORA_DISK_1: 已完成段 1 于 28-12月-07段句柄=/data/backup/07j4o8e2_1_1 标记=TAG20071228T144626 注释=NONE通道 ORA_DISK_1: 备份集已完成, 经过时间:00:00:01完成 backup 于 28-12月-07
RMAN> list backup;
备份集列表ITPUB个人空间i-]!?9^
]
===================
BS 关键字 类型 LV 大小 设备类型 经过时间 完成时间 ITPUB个人空间-u"\WYFP*r;}
z'qV
------- ---- -- ---------- ----------- ------------ ----------
!t,\*{S0rwX"cc06 Incr 0 11.15G DISK 00:06:21 28-12月-07
\b'D9k Io0 BP 关键字: 6 状态: AVAILABLE 已压缩: NO 标记: TAG20071228T143907段名:/data/backup/06j4o80b_1_1
$D+r:Y
upH0 备份集 6 中的数据文件列表
@%T2X,f"fvq8B0 文件 LV 类型 Ckp SCN Ckp 时间 名称ITPUB个人空间-c'CV3v_8^6_~
---- -- ---- ---------- ---------- ----
"cf.no;b8PG0 11 0 Incr 5479422630 28-12月-07 /data/oradata/testzj/ndmain01.dbfITPUB个人空间b9Bx-eg!?4t
12 0 Incr 5479422630 28-12月-07 /data/oradata/testzj/ndmain02.dbf
.EA5v#V/g]&h
^+r0 13 0 Incr 5479422630 28-12月-07 /data/oradata/testzj/ndmain03.dbfITPUB个人空间$O.Pbr1z7x[
14 0 Incr 5479422630 28-12月-07 /data/oradata/testzj/ndmain04.dbfITPUB个人空间 k~,xZg"H+~!O
15 0 Incr 5479422630 28-12月-07 /data/oradata/testzj/ndmain05.dbf
BS 关键字 类型 LV 大小 设备类型 经过时间 完成时间 ITPUB个人空间(|J8g3Hx8Gv ]\1P
------- ---- -- ---------- ----------- ------------ ----------ITPUB个人空间/xa0yA5~2L0?
7 Incr 1 88.00K DISK 00:00:00 28-12月-07
$h4z O-SG*`0 BP 关键字: 7 状态: AVAILABLE 已压缩: NO 标记: TAG20071228T144626段名:/data/backup/07j4o8e2_1_1
X0[R)v"gY0 备份集 7 中的数据文件列表
,\8Y/a8Xpv$n%d\7U0 文件 LV 类型 Ckp SCN Ckp 时间 名称ITPUB个人空间(s$n
Y
N4K;j KZ
---- -- ---- ---------- ---------- ----ITPUB个人空间
n|kyl]Hs
11 1 Incr 5479422832 28-12月-07 /data/oradata/testzj/ndmain01.dbf
3e
w8IjB(Z"o&QI0 12 1 Incr 5479422832 28-12月-07 /data/oradata/testzj/ndmain02.dbf
'kA@!}-z7d0 13 1 Incr 5479422832 28-12月-07 /data/oradata/testzj/ndmain03.dbfITPUB个人空间*HCA8R2a7?7n!f
14 1 Incr 5479422832 28-12月-07 /data/oradata/testzj/ndmain04.dbfITPUB个人空间4x` S,h7y)qF4H
15 1 Incr 5479422832 28-12月-07 /data/oradata/testzj/ndmain05.dbf
执行效率的提高十分显著,这主要是BLOCK CHANGE TRACKING特性的功能。Oracle通过一个小的track文件来记录哪些BLOCK发生了变化,RMAN进行增量备份的时候,不再需要扫描整个数据文件,只需要扫描这个记录变化的文件,找到变化的数据块,并对这些数据块进行备份即可。从而提高了增量备份的执行效率。
导入论坛 引用链接 收藏 分享给好友 推荐到圈子 管理 举报
TAG:
