学习目标
学习openGauss分区表管理
分区表是把逻辑上的一张表根据某种方案分成几张物理块进行存储,这张逻辑上的表称之为分区表,物理块称之为分区。
分区表是一张逻辑表,不存储数据,数据实际是存储在分区上的。
课程学习
连接openGauss
#第一次进入等待15秒
#数据库启动中...
su - omm
gsql -r
复制
1.创建分区表
–范围分区表
create table update_table
(
c1 int,
c2 CHAR(2)
)
partition by range (c1)
(
partition update_table_p0 values less than (50),
partition update_table_p1 values less than (100),
partition update_table_p2 values less than (150)
);
复制
–查看分区表信息
\d+ update_table;
select * from pg_partition;
复制
–插入数据
insert into update_table values (1, 'a'), (50, 'b'), (100, 'c');
复制
–超出范围的数据会报错
insert into update_table values (150, 'd');
复制
–查看各区上的数据
select * from update_table partition(update_table_p0);
复制
2.创建分区
alter table update_table add partition update_table_p3 values less than (200);
insert into update_table values (150, 'd');
复制
3.修改分区属性
alter table update_table rename partition update_table_p1 to update_table_p1_1;
复制
4.删除分区
alter table update_table drop partition update_table_p0;
复制
5.删除分区表
drop table update_table;
复制
课后作业
1.创建一个含有5个分区的范围分区表store,在每个分区中插入记录
create table store(id int,name char(10))
partition by range(id)
(
partition part_p1 values less than (10),
partition part_p2 values less than (20),
partition part_p3 values less than (30),
partition part_p4 values less than (40),
partition part_p5 values less than (50)
);
复制
插入数据
insert into store values (1, 'a'), (20, 'b'), (30, 'c');
复制
–查看分区表信息
\d+ store;
select * from pg_partition where relname = 'store';
复制
2.查看分区1上的数据
select * from store partition(part_p1);
复制
3.重命名分区2
alter table store rename partition part_p2 to part_p2_1;
复制
4.删除分区5
alter table store drop partition part_p5;
复制
5.增加分区6
alter table store add partition part_p6 values less than (60);
复制
6.在系统表pg_partition中查看分区信息
select * from pg_partition where relname = 'store';
复制
7.删除分区表
drop table store;
复制
最后修改时间:2021-12-24 16:18:11
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。
文章被以下合辑收录
评论
目录