关于exp时compress参数

[复制链接]
查看11 | 回复7 | 2005-7-31 01:35:13 | 显示全部楼层 |阅读模式
exp compress=y
的作用到底是什么
怎么理解呢
COMPRESS import into one extent (Y)
------------------
意思是imp以后表的存储参数会发生变化么?
initial_extent变化?还是别的什么
回复

使用道具 举报

千问 | 2005-7-31 01:35:13 | 显示全部楼层
比如你的表100M,INITIAL extent就是100M
回复

使用道具 举报

千问 | 2005-7-31 01:35:13 | 显示全部楼层
就是将原表的所有的数据都导到一个数据一个数据片中。后果是,在将这个表导入数据库时,这个表只有一个extent。
回复

使用道具 举报

千问 | 2005-7-31 01:35:13 | 显示全部楼层
如果有大表,最好不要用y
否则导入的时候很可能表空间不足
回复

使用道具 举报

千问 | 2005-7-31 01:35:13 | 显示全部楼层
你是说导入以后的initial吧
-------------------
我做了如下实验,感觉有点问题,可能是我实验本身的事
-----------------
SQL> select bytes,segment_name,initial_extent,next_extent from user_segments where segment_name like 'ASU';
BYTES SEGMENT_NAME
INITIAL_EXTENT NEXT_EXTENT
---------- --------------------------------------------------------------------------------- -------------- -----------
10616832 ASU
131072131072
----------
exp asu/asu tables=asu compress=y;
---------------
drop table asu;
----------------
imp asu/asu tables=asu;
------------------
SQL> select bytes,segment_name,initial_extent,next_extent from user_segments where segment_name like 'ASU';
BYTES SEGMENT_NAME
INITIAL_EXTENT NEXT_EXTENT
---------- --------------------------------------------------------------------------------- -------------- -----------
10616832 ASU
131072131072
怎么解释呢,initial没有变化啊
回复

使用道具 举报

千问 | 2005-7-31 01:35:13 | 显示全部楼层
一般不建议使用这个参数。
回复

使用道具 举报

千问 | 2005-7-31 01:35:13 | 显示全部楼层
使用此参数可消除表的碎片,但当表特别大失使用此参数可能会导致IMP数据失败,因为所有的数据全部导入到一个EXTENT中
回复

使用道具 举报

千问 | 2005-7-31 01:35:13 | 显示全部楼层
最初由 asullo 发布
[B]你是说导入以后的initial吧
-------------------
我做了如下实验,感觉有点问题,可能是我实验本身的事
-----------------
SQL> select bytes,segment_name,initial_extent,next_extent from user_segments where segment_name like 'ASU';
BYTES SEGMENT_NAME
INITIAL_EXTENT NEXT_EXTENT
---------- --------------------------------------------------------------------------------- -------------- -----------
10616832 ASU
131072131072
----------
exp asu/asu tables=asu compress=y;
---------------
drop table asu;
----------------
imp asu/asu tables=asu;
------------------
SQL> select bytes,segment_name,initial_extent,next_extent from user_segments where segment_name like 'ASU';
BYTES SEGMENT_NAME
INITIAL_EXTENT NEXT_EXTENT
---------- --------------------------------------------------------------------------------- -------------- -----------
10616832 ASU
131072131072
怎么解释呢,initial没有变化啊 [/B]


exp前这个table有多少个extents?
回复

使用道具 举报

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

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行