首页 » SEO优化 » phporacle817技巧_Oracle817 export 时ORA06553和ORA00904处理

phporacle817技巧_Oracle817 export 时ORA06553和ORA00904处理

访客 2024-12-06 0

扫一扫用手机浏览

文章目录 [+]

数据库版本8.1.71 .在做数据库导出export时,报EXP-00008: ORACLE error 6553 encounteredORA-06553: PLS-561: character set mismatch on value for parameter 'SHORTNAME'2 .看到SHOTNAME,立时想到DBMS_JAVA这个包。
反正我们的系统现在也不须要JAVA,于因此SYS用户实行:$ORACLE_HOME/javavm/install/rmjvm.sqldrop package dbms_java;drop public synonym dbms_java;删除JAVA3. 连续实行export,这次报错:EXP-00008: ORACLE error 904 encounteredORA-00904: invalid column name4. 以SYSTEM用户 打开事宜904。
alter system set events='904 trace name errorstack';5。
再实行export, 在user_dump_dest目录下天生了一个trace文件6。
关闭事宜alter system set events='904 trace name errorstack off';7.查看刚天生的trace文件,找到:ORA-00904: invalid column nameCurrent SQL statement for this session:SELECT SYNNAM, DBMS_JAVA.LONGNAME(SYNNAM), DBMS_JAVA.LONGNAME(SYNTAB), TABOWN, TABNODE, PUBLIC$, SYNOWN, SYNOWNID FROM SYS.EXU8SYNU ORDER BY SYNTIME原来问题还是JAVA 。
8 确定实行了rmjava.sql,但是实行SELECT count() FROM dba_objects WHERE object_type LIKE 'JAVA%';返回结果便是不为0, 解释java没删除干净。
9. 在oracle8.1.7中,export判断是否利用了java,是去找"/oracle/aurora/rdbms/DbmsJava".这个工具的,如果java enabled,那么它就会利用dbms_java做一些转换,以是该当让oracle找不到DbmsJava。
实际上oracle是查找视图exu81javt来确定DbmsJava的。
在catexp.sql中,exu81javt是这样定义的:CREATE OR REPLACE view exu81javt (objid) AS SELECT obj# FROM sys.obj$ WHERE name = 'oracle/aurora/rdbms/DbmsJava' AND type# = 29 AND owner# = 0 AND status = 1因此修正一下:CREATE OR REPLACE view exu81javt (objid) AS SELECT obj# FROM sys.obj$ WHERE name = 'oracle/aurora/rdbms/DbmsJava' AND type# = 29 AND owner# = 0 AND status = 1 AND 1 = 0 ;grant select on exu81javt to public10.再export,问题办理。

phporacle817技巧_Oracle817 export 时ORA06553和ORA00904处理

phporacle817技巧_Oracle817 export 时ORA06553和ORA00904处理
(图片来自网络侵删)
标签:

相关文章

大数据引领郑大迈向智慧校园新时代

随着科技的飞速发展,大数据已成为当今时代最具影响力的技术之一。在我国,大数据技术正逐渐渗透到各行各业,推动着社会经济的转型升级。郑...

SEO优化 2024-12-16 阅读0 评论0