impdp fail with ORA-31623
FYI:
Data Pump import and export job use queues, streams and java objects.
If we see any job component is invalid (e.g. dbms_java, queue dictionary scripts not run, rdbms/admin/utlrp.sql not run) we may see the ORA-31623 error.
The ORA-31623 can also happens if you are not current with patches (running catupgrd.sql and/or catpatch.sql ), see MOSC for details.
To troubleshoot the ORA-31623 error, look for entries in dba_registry where “status=”invalid” and check dba_objects for object that are granted owned by SYS that are invalid.
解决思路:
1.查看alert。log,还需要具体分析日志。
2. 流池可能没有分配内存
select * from v$sgainfo; 确认 streams_pool_size 是否为零
alter system set streams_pool_size = 10M scope=spfile; 注意该密令要生效需从启数据库
确认是否有组件失效?:
SELECT comp_name, status, version FROM dba_registry;
3. Oracle bug 。
推荐阅读:
ORA-01172、ORA-01151错误处理
ORA-00600 [2662]错误解决
ORA-01078 和 LRM-00109 报错解决方法
ORA-00471 处理方法笔记
ORA-00314,redolog 损坏,或丢失处理方法
ORA-00257 归档日志过大导致无法存储的解决办法