数据库连接及环境检查
切换用户至omm用户(gaussdb的所有者)
su - omm
gsql连接数据库,并检查当前会话连接信息:
gsql -r
\conninfo
当前非系统表索引信息
\d+
select * from pg_indexes where schemaname not like 'pg_%';

课后练习
1.创建表products, 分别想为表创建一个unique索引1,指定b-tree索引2和表达式索引3
--创建表
create table products
(product_id integer,
product_name char(30),
category char(20)
);
--创建索引
CREATE UNIQUE INDEX IND_UN_ID ON products(product_id);
CREATE INDEX IND_BT_NAME ON products USING btree(product_name);
CREATE INDEX IND_EXP_NAME ON products(SUBSTR(product_name,1 ,2));
CREATE INDEX IND_EXP_NAME1 ON products(SUBSTR(product_name,1 ,2));
\d+
select * from pg_indexes where schemaname not like 'pg_%';
/*************************************************************************************************************
同一张表上同字段可建多个索引,只要求索引名不同,其他条件无限制
**************************************************************************************************************/

2.设置索引1不可用,修改索引2的表空间,重命名索引3
--创建表空间
CREATE TABLESPACE tspc RELATIVE LOCATION 'tablespaces/tbs1';
--变更索引属性
ALTER INDEX IND_UN_ID UNUSABLE;
alter index IND_BT_NAME set tablespace tspc;
ALTER INDEX IND_EXP_NAME RENAME TO IND_EXP_CATE_NEW;

3.重建索引2和products的所有索引
--重建一个索引
ALTER INDEX IND_BT_NAME REBUILD;
--或者
REINDEX INDEX IND_BT_NAME;
--重建表上的所有索引
reindex table products;
/**************************************************************************************************************
在以下几种情况下需要使用REINDEX重建索引:
索引崩溃,并且不再包含有效的数据。
索引变得“臃肿”,包含大量的空页或接近空页。
为索引更改了存储参数(例如填充因子),并且希望这个更改完全生效。
使用CONCURRENTLY选项创建索引失败,留下了一个“非法”索引。
注意:
REINDEX DATABASE和SYSTEM这种形式的重建索引不能在事务块中执行。
**************************************************************************************************************/

4.使用\d+和系统视图pg_indexes查看索引信息
\d+
select * from pg_indexes where schemaname not like 'pg_%';
5.删除索引、表和表空间
DROP INDEX IND_UN_ID;
drop table products;
drop tablespace tspc;
drop tablespace tspc1;

附:openGauss索引相关官网文档
openGauss 表索引创建
openGauss 表索引属性变更
reindex方式重建索引
openGauss 表索引删除
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




