去除UTL_FILE导致的ORA-12012 ORA-04068 ORA-04063 ORA-06508

前些天由于安全等原因,应客户要求,去除了PUBLIC用户的UTL_FILE的权限

结果导致了全部数据库报类似如下错误:

ORA-12012: error on auto execute of job 52
ORA-04068: existing state of packages has been discarded
ORA-04063: package body "ORACLE_OCM.<package name>" has errors
ORA-06508: PL/SQL: could not find program unit being called
(ORACLE官方示例)

解决方法:
SQL> grant execute on UTL_FILE to oracle_ocm;
SQL> grant execute on DBMS_SCHEDULER to oracle_ocm;
SQL> ALTER PACKAGE oracle_ocm.MGMT_DB_LL_METRICS compile;
SQL> ALTER PACKAGE oracle_ocm.mgmt_config compile;

详见oracle文档
http://docs.oracle.com/cd/B19306_01/install.102/e10041/troubleshooting.htm#sthref154

posted @ 2012-08-11 10:33  4admin2root  阅读(494)  评论(0编辑  收藏  举报