达梦数据库 您所在的位置:网站首页 达梦dmhs如何在线更新key 达梦数据库

达梦数据库

2024-07-14 16:42| 来源: 网络整理| 查看: 265

分区表的维护主要有增加分区、删除分区、交换分区、合并分区、拆分分区。

1)增加分区:添加一个新的分区

2)删除分区:删除一个就分区

3)交换分区:将分区数据跟普通表交换,2张表结构必须一样。

4)合并分区:将临近的两个分区合并为一个分区,目前仅支持范围分区表的操作

5)拆分分区:将一个分区拆分成临近的两个分区,目前仅支持范围分区表的操作

下面实验是针对下面这张表,先了解一下表的信息

 

表T_RANGE是一个范围分区表,根据表C列的时间范围分区,创建语法如下图。P1分区有54条,P2分区有50条,其他分区没有数据。

CREATE TABLE t_range (

A INT,

B VARCHAR,

C DATETIME

)

PARTITION BY RANGE(C)

(

PARTITION P1 VALUES LESS THAN ('2021-09-01') TABLESPACE "TBS_PARTA",

PARTITION P2 VALUES LESS THAN ('2021-10-01') TABLESPACE "TBS_PARTA",

PARTITION P3 VALUES LESS THAN ('2021-11-01') TABLESPACE "TBS_PARTB",

PARTITION P4 VALUES LESS THAN ('2021-12-01') TABLESPACE "TBS_PARTB",

PARTITION P5 VALUES EQU OR LESS THAN(MAXVALUE) TABLESPACE "TBS_PARTB"

);

1.删除分区

目前只有范围分区和列表分区能够进行删除分区操作,删除分区会更新分区表的信息,不影响分区索引。

但是原分区里面数据就没有了。

 

2.增加分区

只能对范围分区和列表分区增加分区,对于范围分区,增加分区必须在最后一个范围值的后面增加分区,要想在表的开始范围或者其他分区范围,那就只能使用

拆分分区了。如果分区表有默认分区,那么就需要删除默认分区。

 

可以看到上图中,因为有默认maxvalue,所以新分区没有添加成功。那么久先删除p5的maxvalue分区,

增加新分区,最后记得再补上p5的maxvalue分区,删除分区数据会跟着删除的,记得备份

 

3.交换分区

交换分区是用数据字典修改的,所有不涉及IO操作,不会产生大量的REDO和UNDO日志,还是只能对范围分区和列表分区操作。

首先创建一个普通表,insert两条数据,这2条数据对于t_range 分区的P2分区

 

 

大家看到了吧。这个表和分区P2交换了数据。 数据都在啊

4.合并分区

合并分区目前只支持范围分区进行合并操作,而且必须是范围相邻的两分区,在生产环境中,合并分区会导致数据的重组和分区索引的重建。时间根据数据大小而变化。

 

5.拆分分区

拆分分区目前只支持范围分区

 

附常用SQL文本

CREATE TABLE "SUYS"."PPP_RANGE" (

A INT,

B VARCHAR,

C DATETIME

)

alter table "SUYS"."T_RANGE" drop partition p5;

select table_name,partition_name,high_value  from all_tab_partitions where table_name='T_RANGE';

alter table "SUYS"."T_RANGE"  merge partitions p2,p3 into partition p2_3;

alter table "SUYS"."T_RANGE" split partition p2_3 at('2021-10-01 00:00:00') into(partition p2,partition p3);

达梦数据库 - 新一代大型通用关系型数据库 | 达梦云适配中心达梦数据库产品体验站,DM8在线试玩,达梦数据库全系列产品免费下载,官方权威的快速上手文档和产品手册,最活跃的达梦技术社区,面向全行业ISV厂商免费的云适配服务。icon-default.png?t=L9C2https://eco.dameng.com/



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有