ORA-01502

开发环境有张表突然变得很慢,问什么原因。检查了一下,发现执行计划有问题。
于是去做一下统计分析。出现了ORA-01502错误。

原来是有人move表后,忘记了编译索引 rebuild index。


SQL> analyze table test compute  statistics;
analyze table test compute  statistics
*
第 1 行出现错误:
ORA-01502: 索引 'REPORT.TEST_IDX_OBJ_NAME' 或这类索引的分区处于不可用状态


SQL>  select i.index_name ,i.table_name,i.status from user_indexes  i
  2   where i.index_name='TEST_IDX_OBJ_NAME';

 

INDEX_NAME                         TABLE_NAME    STATUS            
--------------------------              ------------         ----------------  
TEST_IDX_OBJ_NAME              TEST                UNUSABLE          

                                                                                                                                                                   
SQL> alter  index  TEST_IDX_OBJ_NAME rebuild;

索引已更改。

 

SQL> analyze table test compute  statistics;

表已分析。

SQL>  select i.index_name ,i.table_name,i.status from user_indexes  i
  2   where i.index_name='TEST_IDX_OBJ_NAME';

 

INDEX_NAME                         TABLE_NAME    STATUS            
--------------------------              ------------         ----------------  
TEST_IDX_OBJ_NAME              TEST               VALID             

 

 

重组表本是好意,但忘记做rebuild index 也给开发带来了一定的影响。

 

时刻提醒自己在干什么,会产生什么后果。

 

         

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值