问题:使用pl/sql developer开发工具无法编译存储过程,触发器,包等程序文件, 出现not connect to oracle 检查oracle,alter.log文件,并出现如下错误: Errors in file /ntkerp/orantkcn/erpdb/9.2.0/admin/erp_erp/udump/erp_ora_20918.trc: ORA-07445: exception encountered: core dump [ptmak()+106] [SIGSEGV] [Address not mapped to object] [0x8] [] []
检查相关trc文件,发现提示: *** 2007-06-05 16:56:44.341 ksedmp: internal or fatal error ORA-07445: exception encountered: core dump [ptmak()+106] [SIGSEGV] [Address not mapped to object] [0x8] [] [] Current SQL statement for this session: BEGIN /* NOP UNLESS A TABLE OBJECT */ IF dictionary_obj_type = 'TABLE' AND sys.dbms_cdc_publish.active > 0 THEN sys.dbms_cdc_publish.change_table_trigger(dictionary_obj_owner,dictionary_obj_name,'LOCK'); END IF; END; ---------------------------------------------------------------------------------------------------------------- 处理方法: 经过查找metalink,SQL> @?/rdbms/admin/rmcdc.sql 执行该sql文件,再用pl/sql developer编译通过
在$ORACLE_HOME/rdbms/admin下,这个sql文件也很简单!
DROP TRIGGER sys.cdc_alter_ctable_before; DROP TRIGGER sys.cdc_create_ctable_after; DROP TRIGGER sys.cdc_create_ctable_before ; DROP TRIGGER sys.cdc_drop_ctable_before; CALL sys.dbms_java.dropjava('-s rdbms/jlib/CDC.jar');