zoukankan      html  css  js  c++  java
  • Error 942 occured during Initialization of Bufq KUPC$S_1_20181023155636

     

    一台ORACLE实例(Oracle Database 10g Release 10.2.0.5.0)启动时,报Error 942 occured during Initialization of Bufq KUPC$S_1_20181023155636错误,具体情况如下所示,内容信息来自告警日志

     

    SMON: enabling cache recovery

    Thu Aug 08 18:57:04 CST 2019

    Successfully onlined Undo Tablespace 1.

    Thu Aug 08 18:57:04 CST 2019

    SMON: enabling tx recovery

    Thu Aug 08 18:57:04 CST 2019

    Database Characterset is UTF8

    replication_dependency_tracking turned off (no async multimaster replication found)

    Error 942 occured during Initialization of Bufq KUPC$S_1_20181023155636

    Starting background process QMNC

    QMNC started with pid=80, OS id=1777

    Thu Aug 08 18:57:06 CST 2019

    Completed: ALTER DATABASE OPEN

    Thu Aug 08 18:57:06 CST 2019

    db_recovery_file_dest_size of 81920 MB is 0.00% used. This is a

    user-specified limit on the amount of space that will be used by this

    database for recovery-related files, and does not reflect the amount of

    space available in the underlying filesystem or ASM diskgroup.

    Thu Aug 08 19:00:57 CST 2019

    Thread 1 advanced to log sequence 279278 (LGWR switch)

     

    查了一下metalink官方字符,发现官方文档有这方面的资料,出现这个问题是因为 A datapump queue is invalid or it doesn't exist.  The problem occurs during the buffered queue initialization.,详情如下所示:

     

     

    Errors ORA-31623 And ORA-600 [kwqbgqc: bad state] During DataPump Export Or Import (文档 ID 754401.1)原文如下:

     

    APPLIES TO:

    Oracle Server - Enterprise Edition - Version: 10.2.0.4 and later [Release: 10.2 and later ]
    Information in this document applies to any platform.

    SYMPTOMS

    Next ORA-942 is reported in the alert log at database startup:

    Starting ORACLE instance (normal)
    ...
    Opening with internal Resource Manager plan
    where NUMA PG = 4, CPUs = 2
    replication_dependency_tracking turned off (no async multimaster replication found)
    Error 942 occured during Initialization of Bufq KUPC$S_2_20081126123353
    Starting background process QMNC
    QMNC started with pid=19, OS id=1567
    Fri Nov 25 07:33:56 2011
    Completed: ALTER DATABASE OPEN

    ...



    Trying to do an export, it fails with:

    oracle:~ > expdp system/xxx STATUS=60 PARALLEL=4 DIRECTORY=data_pump_dir LOGFILE=expdp.log DUMPFILE=expdp_%u.dmp TABLES=user.table_name TRACE=480300

    Export: Release 10.2.0.4.0 - 64bit Production on Monday, 28 November, 2011 13:06:37

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

    Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64bit Production
    With the Partitioning, OLAP, Data Mining and Real Application Testing options

    UDE-00008: operation generated ORACLE error 31623
    ORA-31623: a job is not attached to this session via the specified handle
    ORA-06512: at "SYS.DBMS_DATAPUMP", line 2772
    ORA-06512: at "SYS.DBMS_DATAPUMP", line 3886
    ORA-06512: at line 1



    At the same time an ORA-600 error is reported an the alert log:

    Mon Nov 28 13:06:39 2011
    Errors in file /production/ora1/DUPDWH/var/DUPDWH/admin/udump/dupdwh_ora_16238.trc:
    ORA-00600: internal error code, arguments: [kwqbgqc: bad state], [1], [1], [], [], [], [], []

     

    CAUSE

    A datapump queue is invalid or it doesn't exist.?

    The problem occurs during the buffered queue initialization.

    SOLUTION

    To recreate the failing queue, follow the steps from?
    Note 754401.1 - ORA-31623 and ORA-600 [kwqbgqc: bad state] During an Export or Import with DataPump

    REFERENCES

    NOTE:403036.1 - ORA-00600: [Kwqbgqc: Bad State], [1], [1] reported on Enqueue of BUFFERED message to a single or multiple consumer queue
    NOTE:754401.1 - ORA-31623 and ORA-600 [kwqbgqc: bad state] During an Export or Import with DataPump

     

     

     

    "Errors ORA-31623 And ORA-600 [kwqbgqc: bad state] During DataPump Export Or Import (文档 ID 754401.1)"原文如下所示:

     

    APPLIES TO:

    Oracle Database Cloud Schema Service - Version N/A and later
    Oracle Database Exadata Express Cloud 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

    An export or import operation using DataPump fails with the following errors:

    UDI-00008: operation generated ORACLE error 31623
    ORA-31623: a job is not attached to this session via the specified handle
    ORA-06512: at "SYS.DBMS_DATAPUMP", line 2772
    ORA-06512: at "SYS.DBMS_DATAPUMP", line 3886
    ORA-06512: at line 1

    and the alert log file of the database shows the error:

    ORA-00600: internal error code, arguments: [kwqbgqc: bad state], [1], [1], [], [], [], [], []

    CHANGES

     

    CAUSE

    A DataPump queue is invalid in data dictionary. This can happen after reruning the catpatch.sql or utlrp.sql scripts.

    SOLUTION

    1. Shutdown the database cleanly:

    SQL> connect / as sysdba
    SQL> shutdown immediate
    SQL> startup restrict

    2. Drop the queue table.

    SQL> exec dbms_aqadm.drop_queue_table (queue_table => 'SYS.KUPC$DATAPUMP_QUETAB', force => TRUE);

    NOTE:

    - If the ORA-4020 error is reported, then wait some minutes and try again
    - If an ORA-24* error is reported, then it could be necessary to perform a manual cleanup. To perform this, contact with a Support Engineer.

    3. Recreate the queue

    The SQL is in the?
    Note.361025.1 or you can pull it from the catdpb.sql script in $ORACLE_HOME/rdbms/admin directory.

    -- Create our queue table.
    BEGIN
      dbms_aqadm.create_queue_table (queue_table => 'SYS.KUPC$DATAPUMP_QUETAB',
             multiple_consumers => TRUE,
             queue_payload_type => 'SYS.KUPC$_MESSAGE',
             comment => 'DataPump Queue Table',
             compatible => '8.1.3');

    EXCEPTION
      WHEN OTHERS THEN
        IF SQLCODE = -24001 THEN NULL;
      ELSE RAISE;
      END IF;
    END;
    /

    4. Run utlrp.sql to recompile all the database objects.

    5. Retry the DataPump operation

     

     

    测试验证,使用expdp导出时,确实会遇到ORA-06512错误,具体如下所示:

     

     

    $ expdp system/xxx DIRECTORY=DUMP_DIR LOGFILE=expdp.log DUMPFILE=test.dmp TABLES=xxxx.xxxx 
     
    Export: Release 10.2.0.5.0 - 64bit Production on Friday, 09 August, 2019 17:08:13
     
    Copyright (c) 2003, 2007, Oracle.  All rights reserved.
     
    Connected to: Oracle Database 10g Release 10.2.0.5.0 - 64bit Production
     
    UDE-00008: operation generated ORACLE error 31623
    ORA-31623: a job is not attached to this session via the specified handle
    ORA-06512: at "SYS.DBMS_DATAPUMP", line 2772
    ORA-06512: at "SYS.DBMS_DATAPUMP", line 3886
    ORA-06512: at line 1

     

    如果加上参数TRACE=480300, expdp会一直卡死,不出结果。告警日志也没有ORA-600错误,跟官方文档Errors ORA-31623 And ORA-600 [kwqbgqc: bad state] During DataPump Export Or Import (文档 ID 754401.1)描述的略有出入。

     

    $ expdp system/xxx DIRECTORY=DUMP_DIR LOGFILE=expdp.log DUMPFILE=test.dmp TABLES=xxxx.xxxx TRACE=480300

     

    解决方法:

     

    1:关闭数据库实例,然后以约束方式启动(startup restrict)

     

    SQL> connect / as sysdba
     
    SQL> shutdown immediate
     
    SQL> startup restrict

     

    2: 删除queue表

     

    SQL> exec dbms_aqadm.drop_queue_table (queue_table => 'SYS.KUPC$DATAPUMP_QUETAB', force => TRUE);
     
    PL/SQL procedure successfully completed.

     

    官方文档提示,如果遇到ORA错误,可以按下面方式处理,如果没有遇到任何错误,直接跳过下面内容。

     

    - If the ORA-4020 error is reported, then wait some minutes and try again

    - If an ORA-24* error is reported, then it could be necessary to perform a manual cleanup. To perform this, contact with a Support Engineer.

     

    3:执行下面脚本,重建queue。此脚本位于$ORACLE_HOME/rdbms/admin目录下的catdpb.sql脚本中

     

    SQL> 
    SQL> BEGIN
      2  dbms_aqadm.create_queue_table(queue_table => 'SYS.KUPC$DATAPUMP_QUETAB', multiple_consumers => TRUE, queue_payload_type =>'SYS.KUPC$_MESSAGE', comment => 'DataPump Queue Table', compatible=>'8.1.3');
      3  
      4  EXCEPTION
       WHEN OTHERS THEN
      5    6        IF SQLCODE = -24001 THEN NULL;
      7        ELSE RAISE;
      8        END IF;
      9  END;
     10  /
     
    PL/SQL procedure successfully completed.

     

     

    4:重启数据库实例

     

    重启数据库后已经没有遇到Error 942 occured during Initialization of Bufq KUPC$S_1_20181023155636这样的错误了

     

    SQL> shutdown immediate;
     
    SQL> startup

     

    5:重编译失效对象

     

    SQL> @$ORACLE_HOME/rdbms/admin/utlrp.sql

     

    6:测试验证数据导出功能

     

     

     

    参考资料:

     

    Errors ORA-31623 And ORA-600 [kwqbgqc: bad state] During DataPump Export Or Import (文档 ID 754401.1)

    Error 942 Occured During Initialization Of Bufq KUPC$S_<number>' Starting Database (文档 ID 1384131.1)

  • 相关阅读:
    从源码分析 XtraBackup 的备份原理
    移动端 SDK 开发经验总结及梳理
    spring boot jar包开机自启
    在Simulink中添加VeriStand支持
    java 启动脚本
    Docker容器日志管理最佳实践
    docker 日志限制或者删除
    网盘搜索
    tuple c++
    google原版:Debugging WebAssembly with modern tools
  • 原文地址:https://www.cnblogs.com/kerrycode/p/11335154.html
Copyright © 2011-2022 走看看