oracle 9.2.0.4 数据库truncate表报错:ora-00600: internal error code, arguments: [ktsircinfo_num1], [13], [0], [0], [], [
oracle 9.2.0.4 数据库truncate表报错:
ora-00600: internal error code, arguments: [ktsircinfo_num1], [13], [0], [0], [], [], [], []
其实,,在truncate之前,曾在该表上执行了创建索引操作create index 。。。online时,会话被意外kill了;
再来删除该表的上的索引:
sql> drop index wap_user.idx_am_monitor_data_monitorid;
drop index wap_user.idx_am_monitor_data_monitorid
*
error at line 1:
ora-08104: this index object 1024126 is being online built or rebuilt
报ora-08104错误,通过处理内部数据字表来处理(需谨慎)
1.获取用户下表sys_journal_#index_object_id并删除
sql> select object_name
2 from dba_objects
3 where object_name like
4 (select '%' || object_id || '%'
5 from dba_objects
6 where object_name = '&index_name')
7 /
enter value for index_name: idx_am_monitor_data_monitorid
old 6: where object_name = '&index_name')
new 6: where object_name = 'idx_am_monitor_data_monitorid')
object_name
--------------------------------------------------------------------------------------------------------------------------------
sys_journal_1024126
sql> drop table wap_user.sys_journal_1024126;
table dropped.
2.删除ind$表中对应记录(需谨慎)
sql> delete from ind$ where obj#=&index_object_id
2 ;
enter value for index_object_id: 1024126
old 1: delete from ind$ where obj#=&index_object_id
new 1: delete from ind$ where obj#=1024126
1 row deleted.
elapsed: 00:00:00.00
3.truncate 成功
sql> truncate table wap_user.am_monitor_data_all_o;
table truncated.
elapsed: 00:00:50.87