最近使用数据泵(DataPump)比较多,遇到了奇奇怪怪的问题,似乎Apply了补丁PSU 10.2.0.5.180717后,DataPump的问题就格外多。如下所示:

expdp system/xxx DIRECTORY=DUMPDIR DUMPFILE=xxxx.dmp TABLES=xxxx.xxxx  LOGFILE=expdp.log 

 

Export: Release 10.2.0.5.0 - 64bit Production on Monday, 19 August, 2019 9:52:07

 

Copyright (c) 2003, 2007, Oracle.  All rights reserved.

 

Connected to: Oracle Database 10g Release 10.2.0.5.0 - 64bit Production

ORA-31626: job does not exist

ORA-31637: cannot create job SYS_EXPORT_TABLE_01 for user SYSTEM

ORA-06512: at "SYS.DBMS_SYS_ERROR", line 95

ORA-06512: at "SYS.KUPV$FT_INT", line 672

ORA-39080: failed to create queues "" and "" for Data Pump job

ORA-06512: at "SYS.DBMS_SYS_ERROR", line 95

ORA-06512: at "SYS.KUPC$QUE_INT", line 1606

ORA-01403: no data found

遇到这个错误,最开始我以为是我之前遇到的是同一个问题“Expdp 导数错误 ORA-00832”,检查发现__streams_pool_size大小不为0

SQL> col name for a36;

SQL> col value for a10;

SQL> col idfefault for a10;

col ismod for a10;

col isadj for a10;

SQL> SELECT X.ksppinm      name       ,

       Y.ksppstvl     value      ,

       Y.ksppstdf     idfefault  ,

       DECODE(bitand(Y.ksppstvf,7), 1, 'MODIFIED', 4, 'SYSTEM_MOD', 'FALSE')  ismod,

       DECODE(bitand(Y.ksppstvf,2), 2, 'TRUE', 'FALSE')  isadj

FROM sys.x$ksppi  X,

     sys.x$ksppcv Y

WHERE X.inst_id = userenv('Instance') AND

      Y.inst_id = userenv('Instance') AND

      X.indx    = Y.indx              AND

      X.ksppinm LIKE '%_streams%'

ORDER BY translate(X.ksppinm, '_', ''); 

 

NAME                                 VALUE      IDFEFAULT  ISMOD      ISADJ

------------------------------------ ---------- ---------- ---------- ----------

__streams_pool_size                  33554432   FALSE      FALSE      FALSE

_memory_broker_shrink_streams_pool   900        TRUE       FALSE      FALSE

_disable_streams_pool_auto_tuning    FALSE      TRUE       FALSE      FALSE

_streams_pool_max_size               0          TRUE       FALSE      FALSE

然后开启跟踪'1403 trace name errorstack level 3',执行导出命名后,然后关闭跟踪'1403 trace name errorstack off'

SQL> alter system set events '1403 trace name errorstack level 3';

System altered.

run the expdp command

SQL> alter system set events '1403 trace name errorstack off';

System altered.

查看trace文件,如下截图所示,提示“ksedmp:internal or fatal error" ,搜索了一下metalink,发现还真有一模一样的错误

但是这个案例中,在验证表结构时,发现表不存在,所以必须reload the DataPump utility, reload the DataPump utility候就能正常的导入导出了。

SQL> analyze table kupc$datapump_quetab validate structure;

analyze table kupc$datapump_quetab validate structure

*

ERROR at line 1:

ORA-00942: table or view does not exist

具体的官方文档如下所示:

DataPump Import Or Export (IMPDP/EXPDP) Fails With Errors ORA-31626 ORA-31637 (文档 ID 345198.1)

APPLIES TO:

Oracle Database - Enterprise Edition - Version 10.1.0.4 and later
Oracle Database Cloud Schema Service - Version N/A and later
Oracle Database Exadata Cloud Machine - Version N/A and later
Oracle Cloud Infrastructure - Database Service - Version N/A and later
Oracle Database Backup Service - Version N/A and later
Information in this document applies to any platform.

SYMPTOMS

Trying to execute the DataPump export or import ends with errors like:

ORA-31626: job does not exist
ORA-31637: cannot create job SYS_EXPORT_FULL_01 for user SYSTEM
ORA-06512: at "SYS.DBMS_SYS_ERROR", line 95
ORA-06512: at "SYS.KUPV$FT_INT", line 601
ORA-39080: failed to create queues "" and "" for Data Pump job
ORA-06512: at "SYS.DBMS_SYS_ERROR", line 95
ORA-06512: at "SYS.KUPC$QUE_INT", line 1550
ORA-01403: no data found

You can also see errors like:

ORA-39006 - internal error
ORA-39065: unexpected master process exception in DISPATCH
ORA-01403: no data found
ORA-39097: Data pump job encountered unexpected error 100

CHANGES

CAUSE

Such errors typically happen in instances with incorrectly configured Advanced Queueing (AQ).

SOLUTION

To resolve the issue, follow the steps below:

1. Set the error stack 1403 event to know exactly which SQL is failing:

connect / as sysdba
alter system set events '1403 trace name errorstack level 3';

NOTE:
In databases that are heavy loaded, setting this event will produce many trace files. It is recommended to set this when the database is not intensively used.

Then re-run the DataPump export/import to reproduce the error and then disable the events.

alter system set events '1403 trace name errorstack off';

2. Once the trace file reveals the problematic SQL, check for the existence of table KUPC$DATAPUMP_QUETAB using DBA_OBJECTS.

3. If present, then run:

connect / as sysdba
analyze table kupc$datapump_quetab validate structure;

4. If not present or it errors out in step 3, then reload the DataPump utility as described in Note 430221.1.

DataPump遭遇ORA-06512&ORA-39080&ORA-01403错误案例的更多相关文章

  1. RAC安装gird,第一个节点执行root.sh报"The ora.asm resource is not ONLINE"错误

    RAC版本:11.2.0.4 OS版本:linux 6.4 RAC安装gird,第一个节点执行root.sh运行失败,报"The ora.asm resource is not ONLINE ...

  2. Oracle启动中,spfile.ora、init<SID>.ora、spfile<SID>.ora 这三个文件正确的先后顺序是什么?

    Oracle启动中,spfile.ora.init<SID>.ora.spfile<SID>.ora 这三个文件正确的先后顺序是什么? 解答:启动数据库,使用startup命令 ...

  3. SpringMVC提交数据遭遇基础类型和日期类型报400错误解决方法

    使用SpringMVC开发的时候,页面如果有日期格式的数据,后台接受也是java.util.Date,则报告400错误 .下面是解决方案的演示示例: 这个是实体类,里面createDate就是java ...

  4. oracle--本地网络配置tnsnames.ora和监听器listener.ora

    文件tnsnames.ora 是给orcl客户端使用 配置本地网络服务:(客户端) 第一种使用暴力方式直接操作: 修改:C:\app\Administrator\product\11.2.0\dbho ...

  5. RMAN异机恢复遭遇ORA-01547、ORA-01152、ORA-01110错误案例

    测试环境:     操作系统  :  Red Hat Enterprise Linux ES release 4 (Nahant Update 4)   VMWARE     数据库     :  O ...

  6. RMAN异机还原遭遇ORA-19698错误案例

    实验环境:               操作系统    :Oracle Linux Server release 5.7 64 bit               数据库版本:Oracle Datab ...

  7. SpringMVC + Spring + MyBatis 学习笔记:提交数据遭遇基础类型和日期类型报400错误解决方法

    系统:WIN8.1 数据库:Oracle 11GR2 开发工具:MyEclipse 8.6 框架:Spring3.2.9.SpringMVC3.2.9.MyBatis3.2.8 使用SpringMVC ...

  8. Oracle的tnsnames.ora配置(PLSQL Developer)

    首先打开tnsnames.ora的存放目录,一般为D:\app\Administrator\product\11.2.0\client_1\network\admin,就看安装具体位置了. 步骤阅读 ...

  9. listener.ora/sqlnet.ora/tnsnames.ora配置文件详解

    oracle网络配置 三个配置文件 listener.ora.sqlnet.ora.tnsnames.ora ,都是放在$ORACLE_HOME/network/admin目录下. 英文说明: The ...

随机推荐

  1. JavaEE初学笔记之Servlet与Tomcat

    JavaEE开发,本质上就是开发一个个Servlet,然后部署到Servlet容器(如Tomcat)里运行.   1. Servlet是什么? Servlet就是一个普通的接口(Interface), ...

  2. CEF编译 执行gn args out\Release_GN_x86异常

    gn args out\Debug_GN_x86 用来配置编译参数,执行gn args out\Release_GN_x86时异常: Toolchain is out of date. Run &qu ...

  3. 自己总结numpy用法

    最近用numpy比较多,边用边自己总结用法. 1. 数组 1.1 生成 m行 * n列 的随机数组 import numpy as np # 生成 m行*n列 的随机数组 # np.random.ra ...

  4. Linux汇总

    Linux介绍以及VMware和Centos的安装 linux-VMtools安装 linux-创建/使用快照/克隆(类似windows中备份还原) linux目录结构 linux指令大全(归类整理) ...

  5. 中国古风唯美水墨工作计划汇报PPT模板推荐

    模版来源:http://ppt.dede58.com/

  6. Dynamics 365 Customer Engagement导入解决方案时出错:Microsoft.Crm.CrmException: Plug-in assembly does not contain the required types or assembly content cannot be updated.

    我是微软Dynamics 365 & Power Platform方面的工程师罗勇,也是2015年7月到2018年6月连续三年Dynamics CRM/Business Solutions方面 ...

  7. android sdk tools里找不到draw9patch.bat 如何制作.9.png 格式图片

    1.什么是.9.png格式 .9.png格式的图片可以在安卓平台指定拉伸区域,防止图片失真,一般用作背景图. 2.前提 最近项目中要用到.9.png格式图片,想着这个简单使用draw9patch.ba ...

  8. 分析Android APK- smali 语言简介

    2.1 smali 语言简介 1.smali apk文件通过apktool反编译出来的都有一个smali文件夹,里面都是以.smali结尾的文件. smali语言是Davlik的寄存器语言,语法上和汇 ...

  9. windows下安装mysql教程

    1.下载安装包-根据自己电脑系统选择合适的版本: https://dev.mysql.com/downloads/mysql/ 2.配置环境变量 2.1 解压所下载的压缩包 2.2 环境变量 win ...

  10. navicat连接不上Linux服务器上的mysql的解决办法

    一开始,心情是沉痛的,截图如下: 转载请注明出处:https://www.cnblogs.com/NaughtyCat/p/how-to-connect-to-mysql-on-linux-by-na ...