创建分区表
范围分区:
Create table t {range_key_column date,
Data varchar2(20)
}
Partition by ranger(range_key_column)
(
partiton part1 values less then (….),
partiton part2 values less then (….),
)
HASH分区可以是数据分散从而更好的避免热块,建议N是2的一个幂,可以得到最佳的分布。
Create table t(hash_key_word date,
data varchar2(20)
)
Partition by HASH(hash_key_column)
(
partition part1 tablespace p1,
partition part2 tablespace p2
)
列表分区
Create table t (state_cd varchar2(2),
Data varchar2(20))
Partition by list(stat_cd)
(
partition part1 values(‘1’,’2’),
partiton part2 values(‘3’,’4’)
)
组合分区 外层总是范围分区
实现空表 和 表分区交换的 表和分区表的结构要一致。
alter table partitioned exchange partition part1
with table partiton including indexes without validation
增加一分区
alter table t add partition part3 value less then(….)
删除一分区
alter table t drop partition part3;
合并分区
alter table t
merge partitions part1,part2 into partition part;
分区改名称
alter table t rename partition part1 to part4;
分区更改表空间
alter table t move partiton part1 tablespaces tb_test1 nologging;
分区表的导出
USERID = USER/PWD@ORCL
TABLE = T:PART1,T:PART2
FILE=D: est.dmp
LOG=D: est.log