暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

ORA-00600: 内部错误代码, 参数: [kntgMvLogObjn]

原创 余虎臣 2020-04-14
1284

做DML和DDL操作时,报如下错误:

SQL> drop table MESDEV0.TPOOM02;
drop table MESDEV0.TPOOM02
*
第 1 行出现错误:
ORA-00600: 内部错误代码, 参数: [kntgMvLogObjn], [0], [], [], [], [], [], [],
[], [], [], []

原因:
猜测是之前,通过update基表直接将用户A改成了用户B,导致出现这种错误。后通过下面第二种方法解决了这个问题

解决办法:
1.先删除materialized view log ,然后再对表进行DML 或DDL 。
select * from dba_mviews;
select * from dba_mview_logs; --这条命令能看到有物化视图日志,owner还是更新前的用户

drop materialized view log on TABLE_NAME; --所以这里操作是没有结果的

2.如果第一步还不能解决,那么就需要重建MATERIALIZED VIEW LOG。
可以参考 Doc ID 1612402.1 对于这类问题Oracle的一个建议就是使用重建物化视图日志,使用with rowid的方式来创建,然后删除。
SELECT * FROM sys.MLOG$;
CREATE MATERIALIZED VIEW LOG ON TABLE_NAME WITH ROWID;
drop materialized view log ON TABLE_NAME;

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

评论