【紧急求助】oracle使用export 复合分区dmp文件变大的问题
问题呈现:仓库数据库中某表原为按日期RANGE分区,后因业务需求改表结构为RANGE+LIST复合分区,导致日常逻辑备份时,生成的dmp文件大小比修改表结构前多1倍左右,导出完成时间也相应多一倍。经核查数据库中表修改前后每日分区大小基本一致,即产生的问题是:RANGE分区、RANGE+LIST复合分区相同大小的数据使用export导出为dmp文件时文件大小相差一倍,请高手指点问题原因!!
以下为修改前后表接口和export语句:
-- 修改前表结构
CREATE TABLE TEST
(
COLUMN1 DATE,
COLUMN2 VARCHAR2(10),
...
...
)
TABLESPACE TBS_XXX
PARTITION BY RANGE (COLUMN1)
(
PARTITION P_20130301 VALUES LESS THAN (TO_DATE(' 2013-03-02 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
LOGGING
COMPRESS
TABLESPACE TBS_XXX
....
....
)
NOCOMPRESS
NOCACHE
NOPARALLEL
MONITORING;
-- 修改后表结构
CREATE TABLE TEST
(
COLUMN1 DATE,
COLUMN2 VARCHAR2(10),
...
...
)
PARTITION BY RANGE (COLUMN1)
SUBPARTITION BY LIST (COLUMN2)
SUBPARTITION TEMPLATE
(SUBPARTITION SUB_0 VALUES ('0') TABLESPACE TBS_XXX,
SUBPARTITION SUB_1 VALUES ('1') TABLESPACE TBS_XXX,
SUBPARTITION SUB_2 VALUES ('2') TABLESPACE TBS_XXX,
SUBPARTITION SUB_3 VALUES ('3') TABLESPACE TBS_XXX,
SUBPARTITION SUB_4 VALUES ('4') TABLESPACE TBS_XXX,
SUBPARTITION SUB_5 VALUES ('5') TABLESPACE TBS_XXX,
SUBPARTITION SUB_6 VALUES ('6') TABLESPACE TBS_XXX,
SUBPARTITION SUB_7 VALUES ('7') TABLESPACE TBS_XXX,
SUBPARTITION SUB_8 VALUES ('8') TABLESPACE TBS_XXX,
SUBPARTITION SUB_9 VALUES ('9') TABLESPACE TBS_XXX,
SUBPARTITION SUB_NUL VALUES (NULL) TABLESPACE TBS_XXX,
SUBPARTITION SUB_OTH VALUES (DEFAULT) TABLESPACE TBS_XXX
)
NOCOMPRESS
NOCACHE
NOPARALLEL
MONITORING;
-- export 语句
userid="username/paswd"
log=***.log
file=(
file1.dmp,
file2.dmp,
file3.dmp,
file4.dmp,
...
...
)
filesize=2147483648
tables=test
grants=n
rows=y
direct=y
statistics=none
recordlength=32768