• 11G RAC ORA-32701


    节点1:

    Wed Feb 13 16:08:06 2019
    Errors in file /u01/app/oracle/diag/rdbms/testdb/testdb1/trace/testdb1_dia0_9267.trc (incident=1248083):
    ORA-32701: Possible hangs up to hang ID=4 detected
    Incident details in: /u01/app/oracle/diag/rdbms/testdb/testdb1/incident/incdir_1248083/testdb1_dia0_9267_i1248083.trc
    DIA0 requesting termination of session sid:5190 with serial # 42237 (ospid:180727) on instance 2
    due to a GLOBAL, HIGH confidence hang with ID=4.
    Hang Resolution Reason: Although the number of affected sessions did not
    justify automatic hang resolution initially, this previously ignored
    hang was automatically resolved.
    DIA0: Examine the alert log on instance 2 for session termination status of hang with ID=4.
    Wed Feb 13 16:08:08 2019
    Sweep [inc][1248083]: completed
    Sweep [inc2][1248083]: completed
    Wed Feb 13 16:09:41 2019
    Errors in file /u01/app/oracle/diag/rdbms/testdb/testdb1/trace/testdb1_dia0_9267.trc (incident=1248084):
    ORA-32701: Possible hangs up to hang ID=4 detected
    Incident details in: /u01/app/oracle/diag/rdbms/testdb/testdb1/incident/incdir_1248084/testdb1_dia0_9267_i1248084.trc
    DIA0 requesting termination of process sid:5190 with serial # 42237 (ospid:180727) on instance 2
    due to a GLOBAL, HIGH confidence hang with ID=4.
    Previous SESSION termination failed.
    Hang Resolution Reason: Although the number of affected sessions did not
    justify automatic hang resolution initially, this previously ignored
    hang was automatically resolved.
    DIA0: Examine the alert log on instance 2 for process termination status of hang with ID=4.

    [oracle@testdb1 trace]$ more /u01/app/oracle/diag/rdbms/testdb/testdb1/trace/testdb1_dia0_9267.trc
    Trace file /u01/app/oracle/diag/rdbms/testdb/testdb1/trace/testdb1_dia0_9267.trc

    *** TRACE FILE RECREATED AFTER BEING REMOVED ***

    Incident 1248083 created, dump file: /u01/app/oracle/diag/rdbms/testdb/testdb1/incident/incdir_1248083/testdb1_dia0_9267_i1248083.trc
    ORA-32701: Possible hangs up to hang ID=4 detected

    Incident 1248084 created, dump file: /u01/app/oracle/diag/rdbms/testdb/testdb1/incident/incdir_1248084/testdb1_dia0_9267_i1248084.trc
    ORA-32701: Possible hangs up to hang ID=4 detected

    节点2:

    Wed Feb 13 16:09:41 2019
    Errors in file /u01/app/oracle/diag/rdbms/testdb/testdb2/trace/testdb2_dia0_7404.trc (incident=1008107):
    ORA-32701: Possible hangs up to hang ID=4 detected
    Incident details in: /u01/app/oracle/diag/rdbms/testdb/testdb2/incident/incdir_1008107/testdb2_dia0_7404_i1008107.trc
    DIA0 terminating blocker (ospid: 180727 sid: 5190 ser#: 42237) of hang with ID = 4

    [oracle@testdb2 trace]$ more /u01/app/oracle/diag/rdbms/testdb/testdb2/trace/testdb2_dia0_7404.trc
    Trace file /u01/app/oracle/diag/rdbms/testdb/testdb2/trace/testdb2_dia0_7404.trc

    *** TRACE FILE RECREATED AFTER BEING REMOVED ***

    Incident 1008106 created, dump file: /u01/app/oracle/diag/rdbms/testdb/testdb2/incident/incdir_1008106/testdb2_dia0_7404_i1008106.trc
    ORA-32701: Possible hangs up to hang ID=4 detected

    Incident 1008107 created, dump file: /u01/app/oracle/diag/rdbms/testdb/testdb2/incident/incdir_1008107/testdb2_dia0_7404_i1008107.trc
    ORA-32701: Possible hangs up to hang ID=4 detected

    等待事件

    inst# SessId Ser# OSPID PrcNm Event
    ----- ------ ----- --------- ----- -----
    1 6746 23425 37352 M000 enq: WF - contention
    2 5190 42237 180727 M000 not in wait


    inst# SessId Ser# OSPID PrcNm Event
    ----- ------ ----- --------- ----- -----
    1 6746 23425 37352 M000 enq: WF - contention
    2 5190 42237 180727 M000 not in wait

    ---解决办法

    -----MOS 上文章 2226216.1
    1. Collect statistics on following fixed table:

    SQL> exec dbms_stats.gather_table_stats('SYS', 'X$KEWRATTRNEW');

    PL/SQL procedure successfully completed.

    SQL> exec dbms_stats.gather_table_stats('SYS', 'X$KEWRSQLIDTAB');

    PL/SQL procedure successfully completed.

    Or

    2. Restarting the database will release of X$KQLFBC table data

    Or

    3. Flush shared_pool on a regular basis


    *** 2019-02-14 06:25:08.352
    current sql: insert into wrh$_sql_bind_metadata (snap_id, dbid, sql_id, name, position, dup_position, datatype, datatype_string, characte
    r_sid, precision, scale, max_length) SELECT /*+ ordered use_nl(bnd) index(bnd sql_id) */ :lah_snap_id, :dbid, bnd.sql_id, name, position,
    dup_position, datatype, dataty

    ---处理方法

    exec dbms_stats.gather_table_stats('SYS', 'X$KEWRATTRNEW');

    exec dbms_stats.gather_table_stats('SYS', 'X$KEWRSQLIDTAB');

    --立马生效

    exec dbms_stats.gather_table_stats(ownname => 'SYS',tabname => 'X$KEWRATTRNEW',no_invalidate => FALSE);
    exec dbms_stats.gather_table_stats(ownname => 'SYS',tabname => 'X$KEWRSQLIDTAB',no_invalidate => FALSE);

    ---定时任务

    # flush shared_pool 每个月执行一次
    33 02 15 * * /bin/sh /home/oracle/flush_shared_pool/flush_shared_pool.sh &> /dev/null

    [oracle@testdb2 ~]$ cat /home/oracle/flush_shared_pool/flush_shared_pool.sh
    #!/bin/bash
    source /home/oracle/.bash_profile

    sqlplus / as sysdba >> /home/oracle/flush_shared_pool/exec_shared_pool.log <<EOF
    set timing on;
    @/home/oracle/flush_shared_pool/flush_shared_pool.sql
    EOF

    [oracle@testdb2 ~]$ cat /home/oracle/flush_shared_pool/flush_shared_pool.sql
    alter system flush shared_pool;

    ---还有可能是死锁引起的故障

    1.业务查询程序死锁问题
    2.执行刷新shared_pool--两个节点都需要执行

    EXEC DBMS_STATS.GATHER_FIXED_OBJECTS_STATS;
    EXEC DBMS_STATS.GATHER_SCHEMA_STATS ('SYS');

    alter system flush shared_pool;

    --查询2个节点基表信息

    select count(*) from x$ksmsp;

    exec dbms_stats.gather_table_stats(ownname => 'SYS',tabname => 'X$KEWRATTRNEW',no_invalidate => FALSE);
    exec dbms_stats.gather_table_stats(ownname => 'SYS',tabname => 'X$KEWRSQLIDTAB',no_invalidate => FALSE);

    --绝招

    alter system set "_awr_disabled_flush_tables" = 'wrh$_sql_bind_metadata';

  • 相关阅读:
    python的ORM框架SQLAlchemy
    SQLAlchemy技术文档(中文版)-下
    SQLAlchemy技术文档(中文版)-上
    python的class的__str__和__repr__(转)
    虚拟化技术之KVM
    cobbler部署安装
    pxe+kickstart 无人值守安装CentOS7.1
    超详细saltstack安装部署及应用
    页面缓存
    db2 常用命令
  • 原文地址:https://www.cnblogs.com/ss-33/p/10394037.html
Copyright © 2020-2023  润新知