0

我在本地系统上运行数据库,并通过家庭网络中的笔记本电脑访问它。今天偶然查看了SYS对象的状态,发现DBMS_METADATA、DATA_PUMP包都失效了。我也无法运行 EXPDP 实用程序。有关如何重新编译此对象并更正状态的任何想法?

谢谢您的帮助!

4

2 回答 2

1

好吧,我终于想通了-尽管这有点蛮力的方法。在管理工具中,我不得不运行 catalog.sql 和 catproc.sql——它们重新创建了 sys 对象。

这之后 utlrp.sql 解决了我所有的问题,现在所有对象都成功编译了。

于 2013-02-14T07:12:03.627 回答
0
sqlplus / as sysdba @?/rdbms/admin/utlrp

应该重新编译所有无效对象。剩下的问题是:它们为什么/如何/何时变得无效,它们曾经有效吗?你检查 dba_registry 了吗?

select * from dba_registry;

通常所有组件都应该是有效的。

于 2013-01-30T20:43:24.323 回答