首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将具有复合分区(Hash/Range)的表迁移到不同的表空间

将具有复合分区(Hash/Range)的表迁移到不同的表空间
EN

Stack Overflow用户
提问于 2015-12-04 12:09:50
回答 1查看 5K关注 0票数 2

尝试将表选项卡从表空间oldTs移到newTs。选项卡上有一个复合分区(Range/Hash)。因此,直接的“更改表-移动-表空间”查询将无法工作,需要通过分区迁移分区。下面是:

代码语言:javascript
复制
CREATE TABLE tab
(
    col_1 char(6),
    col_2 varchar2(4),
    col_3 varchar2(5)
)
TABLESPACE oldTs PARTITION BY RANGE
(
    "col_1"
)
SUBPARTITION BY HASH
(
    "col_2"
)
SUBPARTITIONS 1
(
    PARTITION "P201102" VALUES LESS THAN ('201103') PCTFREE 10 PCTUSED 0 INITRANS 1 MAXTRANS 255 STORAGE( BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT) TABLESPACE "oldTs" NOCOMPRESS NOLOGGING ( SUBPARTITION "SYS_SUBP5223" TABLESPACE "oldTs" NOCOMPRESS , SUBPARTITION "SYS_SUBP5224" TABLESPACE "oldTs" NOCOMPRESS ),
    PARTITION "P201103" VALUES LESS THAN ('201104') PCTFREE 10 PCTUSED 0 INITRANS 1 MAXTRANS 255 STORAGE( BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT) TABLESPACE "oldTs" NOCOMPRESS NOLOGGING ( SUBPARTITION "SYS_SUBP5225" TABLESPACE "oldTs" NOCOMPRESS , SUBPARTITION "SYS_SUBP5226" TABLESPACE "oldTs" NOCOMPRESS )
);

有几个这样的每月分区,创建了一个获得所有分区名称(如P201102、P2001103)的过程,并为移动分区生成一个alter。为了前夫,

代码语言:javascript
复制
ALTER TABLE tab_name MOVE PARTITION P201102 TABLESPACE newTbs;

但是,查询给出了以下错误:

SQL错误: ORA-14257:不能移动除范围、列表、系统或散列分区之外的分区。

另外,如果您在P 201102/P 201103中注意到,每个分区都有两个子分区(SYS_SUBP5225 & SYS_SUBP5226 for P201103)。

为上述场景迁移分区,需要ALTER语句的正确语法。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-12-04 13:04:31

您可以使用移动子分区,但不能使用包含子分区的分区。(很快,您可以移动段。)

代码语言:javascript
复制
ALTER TABLE tab_name MOVE SUBPARTITION SYS_SUBP5225 TABLESPACE newTbs;

UPDATE:如果您想更改创建新分区的位置,那么运行下面的ddl,这将更改表的一个分布--其中创建了新的分区。

代码语言:javascript
复制
 alter table tab_name modify default attributes tablespace newTbs;

UPDATE2:如果您想更改为分区创建子分区的位置,那么在下面运行更改分区的属性--其中创建了新的子分区:

代码语言:javascript
复制
alter table tab_name modify default attributes for partition P201102 tablespace newTbs;
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34088095

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档