优雅的删除索引(visible)

有的时候为了节省空间会删除一些不需要的索引,可能涉及的业务场景比较多,直接删除索引会引发不必要的结果。下面这个方法是比较优雅的删除索引:

--创建索引

SQL> create index idx_hellob_empno on hellob(empno);

Index created.
--查看索引

SQL> select INDEX_NAME,INDEX_TYPE,TABLE_NAME,TABLE_OWNER,status,visibility from user_indexes where table_owner='SCOTT';

INDEX_NAME                     INDEX_TYPE                  TABLE_NAME                     TABLE_OWNER                    STATUS   VISIBILIT
------------------------------ --------------------------- ------------------------------ ------------------------------ -------- ---------
IDX_HELLOB_EMPNO               NORMAL                      HELLOB                         SCOTT                          VALID    VISIBLE
PK_DEPT                        NORMAL                      DEPT                           SCOTT                          VALID    VISIBLE

使用invisible禁用索引,让索引不可见,没有实际删除,但是优化器不会使用该索引

SQL> alter index idx_hellob_empno invisible;

Index altered.

SQL> select INDEX_NAME,INDEX_TYPE,TABLE_NAME,TABLE_OWNER,status,visibility from user_indexes where table_owner='SCOTT';

INDEX_NAME                     INDEX_TYPE                  TABLE_NAME                     TABLE_OWNER                    STATUS   VISIBILIT
------------------------------ --------------------------- ------------------------------ ------------------------------ -------- ---------
IDX_HELLOB_EMPNO               NORMAL                      HELLOB                         SCOTT                          VALID    INVISIBLE
PK_DEPT                        NORMAL                      DEPT                           SCOTT                          VALID    VISIBLE
观察一段时间,假如没有影响,删除索引

drop index index_name

alter index idx_hellob_empno visible;可以让索引迅速可见,并且不会锁表





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值