文章目录
- openGauss学习笔记-203 openGauss 数据库运维-常见故障定位案例-修改索引时只调用索引名提示索引不存在
- 203.1 修改索引时只调用索引名提示索引不存在
- 203.1.1 问题现象
- 203.1.2 原因分析
- 203.1.3 处理办法
openGauss学习笔记-203 openGauss 数据库运维-常见故障定位案例-修改索引时只调用索引名提示索引不存在
203.1 修改索引时只调用索引名提示索引不存在
203.1.1 问题现象
修改索引时只调用索引名提示索引不存在。举例如下。
--创建分区表索引HR_staffS_p1_index1,不指定索引分区的名称。
CREATE INDEX HR_staffS_p1_index1 ON HR.staffS_p1 (staff_ID) LOCAL;
--创建分区索引HR_staffS_p1_index2,并指定索引分区的名称。
CREATE INDEX HR_staffS_p1_index2 ON HR.staffS_p1 (staff_ID) LOCAL
(
PARTITION staff_ID1_index,
PARTITION staff_ID2_index TABLESPACE example3,
PARTITION staff_ID3_index TABLESPACE example4
) TABLESPACE example;
--修改索引分区staff_ID2_index的表空间为example1,提示索引不存在。
ALTER INDEX HR_staffS_p1_index2 MOVE PARTITION staff_ID2_index TABLESPACE example1;
203.1.2 原因分析
推测是当前模式是public模式,而不是hr模式,导致检索不到该索引。
--执行如下命令验证推测,发现调用成功。
ALTER INDEX hr.HR_staffS_p1_index2 MOVE PARTITION staff_ID2_index TABLESPACE example1;
--修改当前会话的schema为hr。
ALTER SESSION SET CURRENT_SCHEMA TO hr;
--执行如下命令修改索引,即可执行成功。
ALTER INDEX HR_staffS_p1_index2 MOVE PARTITION staff_ID2_index TABLESPACE example1;
203.1.3 处理办法
在操作表、索引、视图时加上schema引用,格式如下。
schema.table
👍 点赞,你的认可是我创作的动力!
⭐️ 收藏,你的青睐是我努力的方向!
✏️ 评论,你的意见是我进步的财富!