楼主: 忘记密码啦

为什么要这样压缩表?

[复制链接]
论坛徽章:
407
紫蛋头
日期:2012-05-21 10:19:41迷宫蛋
日期:2012-06-06 16:02:49奥运会纪念徽章:足球
日期:2012-06-29 15:30:06奥运会纪念徽章:排球
日期:2012-07-10 21:24:24鲜花蛋
日期:2012-07-16 15:24:59奥运会纪念徽章:拳击
日期:2012-08-07 10:54:50奥运会纪念徽章:羽毛球
日期:2012-08-21 15:55:33奥运会纪念徽章:蹦床
日期:2012-08-21 21:09:51奥运会纪念徽章:篮球
日期:2012-08-24 10:29:11奥运会纪念徽章:体操
日期:2012-09-07 16:40:00
21#
发表于 2010-9-13 20:55 | 只看该作者
如果只有1列,确实像你说的,但3列就不同了
SQL> create table varchar1 pctfree 0 as select cast(to_char(mod(abs(dbms_random.random),10),'fm9') as varchar(1))a from dual connect by level<=1E6;

表已创建。

已用时间:  00: 00: 09.79
SQL> create table varchar1c compress as select a from varchar1;

表已创建。

已用时间:  00: 00: 02.24
SQL> select sum(bytes)s,segment_name,segment_type from user_segments group by segment_name,segment_type order by 2;

         S SEGMENT_NAME                                                                      SEGMENT_TYPE
---------- --------------------------------------------------------------------------------- ------------------
1.6770E+10 HU                                                                                TABLE PARTITION
1.7807E+10 HUC                                                                               TABLE
5.4105E+10 REN                                                                               TABLE PARTITION
1208614912 REN4                                                                              TABLE PARTITION
1196228608 REN4_1                                                                            TABLE
3.6840E+10 REN5                                                                              TABLE PARTITION
5.9121E+10 RENC                                                                              TABLE
  13631488 T54                                                                               TABLE
  27262976 T54_0                                                                             TABLE
  11534336 T54_2                                                                             TABLE
   8388608 T54_3                                                                             TABLE
  17825792 T54_4                                                                             TABLE
  17825792 T54_7                                                                             TABLE
  11534336 VARCHAR1                                                                          TABLE
  11534336 VARCHAR1C                                                                         TABLE

已选择15行。

已用时间:  00: 00: 00.11
SQL> drop table varchar1c purge;

表已删除。

已用时间:  00: 00: 00.06
SQL> create table varchar1c compress as select a from varchar1 order by 1;

表已创建。

已用时间:  00: 00: 00.92
SQL> select sum(bytes)s,segment_name,segment_type from user_segments group by segment_name,segment_type order by 2;

         S SEGMENT_NAME                                                                      SEGMENT_TYPE
---------- --------------------------------------------------------------------------------- ------------------
1.6770E+10 HU                                                                                TABLE PARTITION
1.7807E+10 HUC                                                                               TABLE
5.4105E+10 REN                                                                               TABLE PARTITION
1208614912 REN4                                                                              TABLE PARTITION
1196228608 REN4_1                                                                            TABLE
3.6840E+10 REN5                                                                              TABLE PARTITION
5.9121E+10 RENC                                                                              TABLE
  13631488 T54                                                                               TABLE
  27262976 T54_0                                                                             TABLE
  11534336 T54_2                                                                             TABLE
   8388608 T54_3                                                                             TABLE
  17825792 T54_4                                                                             TABLE
  17825792 T54_7                                                                             TABLE
  11534336 VARCHAR1                                                                          TABLE
  11534336 VARCHAR1C                                                                         TABLE

已选择15行。

已用时间:  00: 00: 00.06
SQL> insert into varchar1 select NULL from varchar1;

已创建1000000行。

已用时间:  00: 00: 00.70
SQL> drop table varchar1c purge;

表已删除。

已用时间:  00: 00: 00.13
SQL> create table varchar1c compress as select a from varchar1 order by 1;

表已创建。

已用时间:  00: 00: 01.67
SQL> select sum(bytes)s,segment_name,segment_type from user_segments group by segment_name,segment_type order by 2;

         S SEGMENT_NAME                                                                      SEGMENT_TYPE
---------- --------------------------------------------------------------------------------- ------------------
1.6770E+10 HU                                                                                TABLE PARTITION
1.7807E+10 HUC                                                                               TABLE
5.4105E+10 REN                                                                               TABLE PARTITION
1208614912 REN4                                                                              TABLE PARTITION
1196228608 REN4_1                                                                            TABLE
3.6840E+10 REN5                                                                              TABLE PARTITION
5.9121E+10 RENC                                                                              TABLE
  13631488 T54                                                                               TABLE
  27262976 T54_0                                                                             TABLE
  11534336 T54_2                                                                             TABLE
   8388608 T54_3                                                                             TABLE
  17825792 T54_4                                                                             TABLE
  17825792 T54_7                                                                             TABLE
  23068672 VARCHAR1                                                                          TABLE
  23068672 VARCHAR1C                                                                         TABLE

已选择15行。

已用时间:  00: 00: 00.06
SQL> drop table varchar1c purge;

表已删除。

已用时间:  00: 00: 00.08
SQL> drop table varchar1 purge;

表已删除。

已用时间:  00: 00: 00.13
SQL> create table varchar2 pctfree 0 as select cast(to_char(mod(abs(dbms_random.random),100),'fm99') as varchar(2))a from dual connect by level<=1E6;
create table varchar2 pctfree 0 as select cast(to_char(mod(abs(dbms_random.random),100),'fm99') as varchar(2))a from dual connect by level<=1E6
             *
第 1 行出现错误:
ORA-00903: 表名无效


已用时间:  00: 00: 00.01
SQL> create table varchr2 pctfree 0 as select cast(to_char(mod(abs(dbms_random.random),100),'fm99') as varchar(2))a from dual connect by level<=1E6;

表已创建。

已用时间:  00: 00: 09.75
SQL> insert into varchar1 select NULL from varchar1;
insert into varchar1 select NULL from varchar1
                                      *
第 1 行出现错误:
ORA-00942: 表或视图不存在


已用时间:  00: 00: 00.02
SQL> insert into varchr2 select NULL from varchr2;

已创建1000000行。

已用时间:  00: 00: 01.79
SQL> create table varchr2c compress as select a from varchr2 order by 1;

表已创建。

已用时间:  00: 00: 01.66
SQL> select sum(bytes)s,segment_name,segment_type from user_segments group by segment_name,segment_type order by 2;

         S SEGMENT_NAME                                                                      SEGMENT_TYPE
---------- --------------------------------------------------------------------------------- ------------------
1.6770E+10 HU                                                                                TABLE PARTITION
1.7807E+10 HUC                                                                               TABLE
5.4105E+10 REN                                                                               TABLE PARTITION
1208614912 REN4                                                                              TABLE PARTITION
1196228608 REN4_1                                                                            TABLE
3.6840E+10 REN5                                                                              TABLE PARTITION
5.9121E+10 RENC                                                                              TABLE
  13631488 T54                                                                               TABLE
  27262976 T54_0                                                                             TABLE
  11534336 T54_2                                                                             TABLE
   8388608 T54_3                                                                             TABLE
  17825792 T54_4                                                                             TABLE
  17825792 T54_7                                                                             TABLE
  23068672 VARCHR2                                                                           TABLE
  23068672 VARCHR2C                                                                          TABLE

已选择15行。

已用时间:  00: 00: 00.06
SQL> select * from varchr2 where rownum<=10;

A
--
64
83
3
43
60
63
89
78
50
96

已选择10行。

已用时间:  00: 00: 00.05
SQL> select * from varchr2c where rownum<=10;

A
--
0
0
0
0
0
0
0
0
0
0

已选择10行。

已用时间:  00: 00: 00.62
SQL> select * from varchr2c where a is null and rownum<=10;

A
--











已选择10行。

已用时间:  00: 00: 00.58
SQL> drop table varchr2 purge;

表已删除。

已用时间:  00: 00: 00.09
SQL> drop table varchar2c purge;
drop table varchar2c purge
           *
第 1 行出现错误:
ORA-00942: 表或视图不存在


已用时间:  00: 00: 00.02
SQL> drop table varchr2c purge;

表已删除。

已用时间:  00: 00: 00.10
SQL> purge recyclebin;

回收站已清空。

已用时间:  00: 00: 00.01
SQL> create table t3 as select h02,h09,h10 from hu where rownum<=1E6;

表已创建。

已用时间:  00: 00: 03.20
SQL> drop table t3 purge;

表已删除。

已用时间:  00: 00: 00.09
SQL> create table t3pct0 pctfree 0 as select h02,h09,h10 from hu where rownum<=1E6;

表已创建。

已用时间:  00: 00: 01.22
SQL> create table t3comp compress as select h02,h09,h10 from t3pct0;

表已创建。

已用时间:  00: 00: 02.76
SQL> select sum(bytes)s,segment_name,segment_type from user_segments group by segment_name,segment_type order by 2;

         S SEGMENT_NAME                                                                      SEGMENT_TYPE
---------- --------------------------------------------------------------------------------- ------------------
1.6770E+10 HU                                                                                TABLE PARTITION
1.7807E+10 HUC                                                                               TABLE
5.4105E+10 REN                                                                               TABLE PARTITION
1208614912 REN4                                                                              TABLE PARTITION
1196228608 REN4_1                                                                            TABLE
3.6840E+10 REN5                                                                              TABLE PARTITION
5.9121E+10 RENC                                                                              TABLE
  12582912 T3COMP                                                                            TABLE
  14680064 T3PCT0                                                                            TABLE
  13631488 T54                                                                               TABLE
  27262976 T54_0                                                                             TABLE
  11534336 T54_2                                                                             TABLE
   8388608 T54_3                                                                             TABLE
  17825792 T54_4                                                                             TABLE
  17825792 T54_7                                                                             TABLE

已选择15行。

已用时间:  00: 00: 00.07
SQL>

使用道具 举报

回复
论坛徽章:
86
2015中国数据库技术大会纪念徽章
日期:2015-04-24 16:04:24马上有车
日期:2014-02-19 11:55:14马上有车
日期:2014-02-18 16:41:112014年新春福章
日期:2014-02-18 16:41:11优秀写手
日期:2013-12-18 09:29:11日产
日期:2013-10-17 08:44:39马自达
日期:2013-08-26 16:28:022013年新春福章
日期:2013-02-25 14:51:24ITPUB 11周年纪念徽章
日期:2012-10-23 16:55:51马上有房
日期:2014-02-19 11:55:14
22#
发表于 2010-9-13 21:34 | 只看该作者
h02,h09,h10

加起来还是超过5了。

使用道具 举报

回复
论坛徽章:
407
紫蛋头
日期:2012-05-21 10:19:41迷宫蛋
日期:2012-06-06 16:02:49奥运会纪念徽章:足球
日期:2012-06-29 15:30:06奥运会纪念徽章:排球
日期:2012-07-10 21:24:24鲜花蛋
日期:2012-07-16 15:24:59奥运会纪念徽章:拳击
日期:2012-08-07 10:54:50奥运会纪念徽章:羽毛球
日期:2012-08-21 15:55:33奥运会纪念徽章:蹦床
日期:2012-08-21 21:09:51奥运会纪念徽章:篮球
日期:2012-08-24 10:29:11奥运会纪念徽章:体操
日期:2012-09-07 16:40:00
23#
发表于 2010-9-13 21:36 | 只看该作者
哦,原来是1行总和大于5...
这里有个不依赖hu实际数据的例子
SQL> create table t3pct0 pctfree 0 as select h02,h09,h10 from hu where rownum=0;

表已创建。

已用时间:  00: 01: 49.05
SQL> select count(*) from t3pct0;

  COUNT(*)
----------
         0

已用时间:  00: 00: 00.00



SQL> insert into t3pct0 select mod(level,10),mod(level,100),mod(level,1000) from dual connect by level<=1E6;

已创建1000000行。

已用时间:  00: 00: 04.37
SQL> create table t3comp compress as select h02,h09,h10 from t3pct0 order by 3;

表已创建。

已用时间:  00: 00: 01.04
SQL> select sum(bytes)s,segment_name,segment_type from user_segments group by segment_name,segment_type order by 2;

         S SEGMENT_NAME                                                                      SEGMENT_TYPE
---------- --------------------------------------------------------------------------------- ------------------
1.6770E+10 HU                                                                                TABLE PARTITION
1.7807E+10 HUC                                                                               TABLE
5.4105E+10 REN                                                                               TABLE PARTITION
1208614912 REN4                                                                              TABLE PARTITION
1196228608 REN4_1                                                                            TABLE
3.6840E+10 REN5                                                                              TABLE PARTITION
5.9121E+10 RENC                                                                              TABLE
  11534336 T3COMP                                                                            TABLE
  14680064 T3PCT0                                                                            TABLE

使用道具 举报

回复
论坛徽章:
86
2015中国数据库技术大会纪念徽章
日期:2015-04-24 16:04:24马上有车
日期:2014-02-19 11:55:14马上有车
日期:2014-02-18 16:41:112014年新春福章
日期:2014-02-18 16:41:11优秀写手
日期:2013-12-18 09:29:11日产
日期:2013-10-17 08:44:39马自达
日期:2013-08-26 16:28:022013年新春福章
日期:2013-02-25 14:51:24ITPUB 11周年纪念徽章
日期:2012-10-23 16:55:51马上有房
日期:2014-02-19 11:55:14
24#
发表于 2010-9-13 22:00 | 只看该作者
SUNDOG315>create table t_comp4 compress
  2  as
  3   select 'aa' as text1,
  4          'aa' as text2
  5     from dual
  6  connect by level <= 1000000;


表已创建。

SUNDOG315>create table t_comp6 compress
  2  as
  3   select 'aa' as text1,
  4          'aaaa' as text2
  5     from dual
  6  connect by level <= 1000000;


表已创建。

SUNDOG315>create table t_nocomp6 pctfree 0 nocompress
  2  as
  3   select 'aa' as text1,
  4          'aaaa' as text2
  5     from dual
  6  connect by level <= 1000000;


表已创建。

SUNDOG315>create table t_nocomp4 pctfree 0 nocompress
  2  as
  3   select 'aa' as text1,
  4          'aa' as text2
  5     from dual
  6  connect by level <= 1000000;


表已创建。

SUNDOG315>select segment_name,blocks*8/1024 from user_segments;

SEGMENT_NAME
--------------------------------------------------------------------------------

BLOCKS*8/1024
-------------


T_COMP4
           11

T_COMP6
           11

T_NOCOMP6
           13

T_NOCOMP4
           11


SUNDOG315>select dbms_rowid.rowid_relative_fno(t.rowid) file#,
  2         dbms_rowid.rowid_block_number(t.rowid) block#
  3    from t_comp4 t
  4   where rownum=1;


     FILE#     BLOCK#
---------- ----------


         4        171

SUNDOG315>select dbms_rowid.rowid_relative_fno(t.rowid) file#,
  2         dbms_rowid.rowid_block_number(t.rowid) block#
  3    from t_comp6 t
  4   where rownum=1;


     FILE#     BLOCK#
---------- ----------


         4        299

SUNDOG315>alter system dump datafile 4 block 171;

系统已更改。

SUNDOG315>alter system dump datafile 4 block 299;

系统已更改。


Block 171:

Block header dump:  0x010000ab
Object id on Block? Y
seg/obj: 0x14104  csc: 0x00.421386  itc: 3  flg: E  typ: 1 - DATA
     brn: 0  bdba: 0x10000a8 ver: 0x01 opc: 0
     inc: 0  exflg: 0

Itl           Xid                  Uba         Flag  Lck        Scn/Fsc
0x01   0xffff.000.00000000  0x00000000.0000.00  C---    0  scn 0x0000.00421386
0x02   0x0000.000.00000000  0x00000000.0000.00  ----    0  fsc 0x0000.00000000
0x03   0x0000.000.00000000  0x00000000.0000.00  ----    0  fsc 0x0000.00000000
bdba: 0x010000ab
data_block_dump,data header at 0xd44407c
===============
tsiz: 0x1f80
hsiz: 0x5c6
pbl: 0x0d44407c
     76543210
flag=--------
ntab=1
nrow=730
frre=-1
fsbo=0x5c6
fseo=0x5d6
avsp=0x10
tosp=0x10
0xe:pti[0]        nrow=730        offs=0
...
block_row_dump:
tab 0, row 0, @0x1f77
tl: 9 fb: --H-FL-- lb: 0x0  cc: 2
col  0: [ 2]  61 61
col  1: [ 2]  61 61
tab 0, row 1, @0x1f6e
tl: 9 fb: --H-FL-- lb: 0x0  cc: 2
col  0: [ 2]  61 61
col  1: [ 2]  61 61

Block 299:

Block header dump:  0x0100012b
Object id on Block? Y
seg/obj: 0x14105  csc: 0x00.4213f7  itc: 3  flg: E  typ: 1 - DATA
     brn: 0  bdba: 0x1000128 ver: 0x01 opc: 0
     inc: 0  exflg: 0

Itl           Xid                  Uba         Flag  Lck        Scn/Fsc
0x01   0xffff.000.00000000  0x00000000.0000.00  C---    0  scn 0x0000.004213f7
0x02   0x0000.000.00000000  0x00000000.0000.00  ----    0  fsc 0x0000.00000000
0x03   0x0000.000.00000000  0x00000000.0000.00  ----    0  fsc 0x0000.00000000
bdba: 0x0100012b
data_block_dump,data header at 0xd44407c
===============
tsiz: 0x1f80
hsiz: 0x5d6
pbl: 0x0d44407c
     76543210
flag=-0------
ntab=2
nrow=729
frre=-1
fsbo=0x5d6
fseo=0x113d
avsp=0x7
tosp=0x7
        r0_9ir2=0x0
        mec_kdbh9ir2=0x1
                      76543210
        shcf_kdbh9ir2=----------
                  76543210
        flag_9ir2=--R----C        Archive compression: N
                fcls_9ir2[3]={ 0 32768 32768 }
0x1c:pti[0]        nrow=1        offs=0
0x20:pti[1]        nrow=728        offs=1
...
block_row_dump:
tab 0, row 0, @0x1f75
tl: 11 fb: --H-FL-- lb: 0x0  cc: 2
col  0: [ 2]  61 61
col  1: [ 4]  61 61 61 61
bindmp: 02 d8 02 ca 61 61 cc 61 61 61 61
tab 1, row 0, @0x1f70
tl: 5 fb: --H-FL-- lb: 0x0  cc: 2
col  0: [ 2]  61 61
col  1: [ 4]  61 61 61 61
bindmp: 2c 00 01 02 00

使用道具 举报

回复
论坛徽章:
407
紫蛋头
日期:2012-05-21 10:19:41迷宫蛋
日期:2012-06-06 16:02:49奥运会纪念徽章:足球
日期:2012-06-29 15:30:06奥运会纪念徽章:排球
日期:2012-07-10 21:24:24鲜花蛋
日期:2012-07-16 15:24:59奥运会纪念徽章:拳击
日期:2012-08-07 10:54:50奥运会纪念徽章:羽毛球
日期:2012-08-21 15:55:33奥运会纪念徽章:蹦床
日期:2012-08-21 21:09:51奥运会纪念徽章:篮球
日期:2012-08-24 10:29:11奥运会纪念徽章:体操
日期:2012-09-07 16:40:00
25#
发表于 2010-9-14 06:16 | 只看该作者
bindmp: 02 d8 02 ca 61 61 cc 61 61 61 61
tab 1, row 0, @0x1f70  --为什么还是row0?
tl: 5 fb: --H-FL-- lb: 0x0  cc: 2
col  0: [ 2]  61 61
col  1: [ 4]  61 61 61 61
bindmp: 2c 00 01 02 00 --这是实际存的内容?

使用道具 举报

回复
论坛徽章:
407
紫蛋头
日期:2012-05-21 10:19:41迷宫蛋
日期:2012-06-06 16:02:49奥运会纪念徽章:足球
日期:2012-06-29 15:30:06奥运会纪念徽章:排球
日期:2012-07-10 21:24:24鲜花蛋
日期:2012-07-16 15:24:59奥运会纪念徽章:拳击
日期:2012-08-07 10:54:50奥运会纪念徽章:羽毛球
日期:2012-08-21 15:55:33奥运会纪念徽章:蹦床
日期:2012-08-21 21:09:51奥运会纪念徽章:篮球
日期:2012-08-24 10:29:11奥运会纪念徽章:体操
日期:2012-09-07 16:40:00
26#
发表于 2010-9-14 07:44 | 只看该作者

使用道具 举报

回复
论坛徽章:
86
2015中国数据库技术大会纪念徽章
日期:2015-04-24 16:04:24马上有车
日期:2014-02-19 11:55:14马上有车
日期:2014-02-18 16:41:112014年新春福章
日期:2014-02-18 16:41:11优秀写手
日期:2013-12-18 09:29:11日产
日期:2013-10-17 08:44:39马自达
日期:2013-08-26 16:28:022013年新春福章
日期:2013-02-25 14:51:24ITPUB 11周年纪念徽章
日期:2012-10-23 16:55:51马上有房
日期:2014-02-19 11:55:14
27#
发表于 2010-9-14 08:46 | 只看该作者
原帖由 〇〇 于 2010-9-14 06:16 发表
bindmp: 02 d8 02 ca 61 61 cc 61 61 61 61
tab 1, row 0, @0x1f70  --为什么还是row0?
tl: 5 fb: --H-FL-- lb: 0x0  cc: 2
col  0: [ 2]  61 61
col  1: [ 4]  61 61 61 61
bindmp: 2c 00 01 02 00 --这是实际存的内容?


两个table,table0是符号表,table1才是真正的表

真正存储的,就是bindmp,我观察最小的长度是5,所以,如果字段长度小于5的话,根本就不值当进行压缩。

使用道具 举报

回复
论坛徽章:
407
紫蛋头
日期:2012-05-21 10:19:41迷宫蛋
日期:2012-06-06 16:02:49奥运会纪念徽章:足球
日期:2012-06-29 15:30:06奥运会纪念徽章:排球
日期:2012-07-10 21:24:24鲜花蛋
日期:2012-07-16 15:24:59奥运会纪念徽章:拳击
日期:2012-08-07 10:54:50奥运会纪念徽章:羽毛球
日期:2012-08-21 15:55:33奥运会纪念徽章:蹦床
日期:2012-08-21 21:09:51奥运会纪念徽章:篮球
日期:2012-08-24 10:29:11奥运会纪念徽章:体操
日期:2012-09-07 16:40:00
28#
发表于 2010-9-14 11:19 | 只看该作者
记得哪篇文章说到算法由bzip2改为gzip?

使用道具 举报

回复
论坛徽章:
407
紫蛋头
日期:2012-05-21 10:19:41迷宫蛋
日期:2012-06-06 16:02:49奥运会纪念徽章:足球
日期:2012-06-29 15:30:06奥运会纪念徽章:排球
日期:2012-07-10 21:24:24鲜花蛋
日期:2012-07-16 15:24:59奥运会纪念徽章:拳击
日期:2012-08-07 10:54:50奥运会纪念徽章:羽毛球
日期:2012-08-21 15:55:33奥运会纪念徽章:蹦床
日期:2012-08-21 21:09:51奥运会纪念徽章:篮球
日期:2012-08-24 10:29:11奥运会纪念徽章:体操
日期:2012-09-07 16:40:00
29#
发表于 2010-9-14 11:25 | 只看该作者
同样的,Oracle也在10g中开始引入RMAN的压缩技术。但是Oracle11g号称采用了更先进的ZLIB要所算法,可以比Oracle10g的压缩算法快上40%,空间需求也将减少20%。
本文来自学习网(www.gzu521.com),原文地址:http://www.gzu521.com/it/oracle/zonghe/200907/21120.htm
真是胡说.bzip2和zip也不清楚

[ 本帖最后由 〇〇 于 2010-9-14 11:30 编辑 ]

使用道具 举报

回复
论坛徽章:
407
紫蛋头
日期:2012-05-21 10:19:41迷宫蛋
日期:2012-06-06 16:02:49奥运会纪念徽章:足球
日期:2012-06-29 15:30:06奥运会纪念徽章:排球
日期:2012-07-10 21:24:24鲜花蛋
日期:2012-07-16 15:24:59奥运会纪念徽章:拳击
日期:2012-08-07 10:54:50奥运会纪念徽章:羽毛球
日期:2012-08-21 15:55:33奥运会纪念徽章:蹦床
日期:2012-08-21 21:09:51奥运会纪念徽章:篮球
日期:2012-08-24 10:29:11奥运会纪念徽章:体操
日期:2012-09-07 16:40:00
30#
发表于 2010-9-14 11:26 | 只看该作者
http://www.oracle.com/technology ... tures/11g-rman.html

ZLIB 压缩
RMAN 在 Oracle 数据库 10g 中提供了备份片断压缩功能以节省网络带宽,但是许多人都不轻易使用它。为什么?因为第三方压缩工具提供的方法比 RMAN 自身的更快。但是,RMAN 10g 压缩有一些第三方压缩工具没有提供的好用功能。例如,当 RMAN 10g 恢复数据文件时,它不需要首先解压缩这些文件(如果以前被压缩过)。该方法在还原期间可以显著节省带宽。

在 Oracle 数据库 11g 中,RMAN 提供了另一种算法 ZLIB,而以前使用的是 BZIP2。ZLIB 算法要快得多,但是不能压缩太多内容。另一方面,它也很节省 CPU。因此,如果您的 CPU 不多,最好使用 ZLIB 压缩。(注意,版本 11.1 中的默认选项是 BZIP2;您需要许可一个新选项 Advanced Compression Option 才能使用 ZLIB。)

要使用 ZLIB 压缩,只需将 RMAN 配置参数设置为:

RMAN> configure compression algorithm 'ZLIB' ;       

如果您以前更改过该参数,需要发出上述命令。要将其更改为 BZIP2,发出以下命令:
RMAN> configure compression algorithm 'bzip2';

现在,所有压缩备份都将使用新的算法。

[ 本帖最后由 〇〇 于 2010-9-14 11:29 编辑 ]

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 未成年人举报专区 
京ICP备16024965号-8  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表