exp userid=testuser/XXX@xxxdb file=d:\1.dmp log=d:\1.log owner=(testuser)
Export: Release 10.2.0.1.0 - Production on 星期六 12月 14 15:56:28 2019
Copyright (c) 1982, 2005, Oracle. All rights reserved.
连接到: Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Produc
tion
With the Partitioning, OLAP, Data Mining and Real Application Testing options
已导出 ZHS16GBK 字符集和 AL16UTF16 NCHAR 字符集
. 正在导出 pre-schema 过程对象和操作
. 正在导出用户 TESTUSER 的外部函数库名
. 导出 PUBLIC 类型同义词
EXP-00008: 遇到 ORACLE 错误 904
ORA-00904: : 标识符无效
EXP-00000: 导出终止失败
原因:
出现这个问题的原因是打补丁后PUBLIC的DBMS_JAVA包权限被回收,要想执行exp导出成功需要DBMS_JAVA的execute权限,然而担心到安全的问题,回收了DBMS_JAVA包的执行权限,以保证数据库的安全。
解决办法:
执行grant execute on DBMS_JAVA to public;
语句之后exp操作恢复正常。