oracle库是9.2.0.4
在库里面,所有的trigger都无法使用(包括SYS用户的),在dba_objects里面查triggers状态却都是valid,但是再dba_triggers里面查询不到。
用pl/sql工具查询trigger,提示properties of trigger_name not available。在PL/SQL里面查看trigger显示/* Source of TRIGGER TRIG_CC_ACCOUNT_INSERT is not available */。
重新编译也是报错“Properties of trigger_name not available”,但是可以编译成功。不过重编译后查看trigger 还是报同样的错。
删除trigger出现ORA-00600: 内部错误代码,参数: [15246], [], [], [], [], [], [], []。导致无法删除。系统基本没有任何改动。只是由于高级复制监控进程占用系统资源太多,修改aq_tm_processes=0,把它关掉了,不知道这个有没有影响。有人建议我执行catalog.sql重建数据字典,由于我的系统是24×7的生产系统,不知道执行catalog.sql会有什么风险?是否会影响系统服务?请大家多指教,谢谢!

解决方案 »

  1.   

       用户权限不够:
       cmd
       sqlplus /nolog
       conn / as sysdba
       create user gdls identified by gdls1010 default tablespace users temporary tablespace temp;
       grant dba to gdls;
       grant select on v_$session to gdls;
       grant select on v_$parameter to gdls;
       grant select on v_$locked_object to gdls;
       grant select on sys.dependency$ to gdls;
       grant execute on sys.dbms_ddl to gdls;
       grant execute on sys.dbms_pipe to gdls;