zoukankan      html  css  js  c++  java
  • 【翻译自mos文章】当并行事务恢复进程在执行时,禁用并行事务恢复的方法


    当并行事务恢复进程在执行时,禁用并行事务恢复的方法
    How to Disable Parallel Transaction Recovery When Parallel Txn Recovery is Active (Doc ID 238507.1)

    适用于:
    Oracle Database - Enterprise Edition - Version 8.1.5.0 to 11.2.0.4 [Release 8.1.5 to 11.2]
    Oracle Database - Personal Edition - Version 8.1.5.0 to 11.2.0.4 [Release 8.1.5 to 11.2]
    Information in this document applies to any platform.


    症状:
    Parallel Transaction Recovery  花费了非常长时间
    你能够使用V$TRANSACTION视图的USED_UBLK列来预计rollback须要多长时间,但并没有公式来计算该时间。


    假设你在rollback 已经启动之后。再shutdown database。rollback会在停止的地方再启动。

    你能够看一下V$FAST_START_TRANSACTIONS视图中的两列的对照: UNDOBLOCKSDONE  和 UNDOBLOCKSTOTAL

    变动:
    一个大事务 被kill掉 或者被rolled back

    原因:
    并行事务恢复( parallel transaction recovery ) 不如串行回滚快的样例非常多。原因是pq slaves进程会相互干扰(interfer)
    这取决于须要rollback的类型,一般发生在roll back 并行 index update上。

    解决方式:
    在线地把并行恢复改为串行。若是cluster环境,须要在全部的实例上同一时候改动

    1. 找到smon的 oracle pid (注意不是os pid)
    SQL> select pid, program from v$process where program like '%SMON%';

           PID PROGRAM
    ---------- ------------------------------------------------
             6 oracle@stsun7 (SMON)
            

    2. disable smon transaction cleanup
    SQL> oradebug setorapid 'SMON's Oracle PID';
    SQL> oradebug event 10513 trace name context forever, level 2

    3.从os层面kill掉那些正在运行并行事务恢复的pq slave进程。

    能够通过V$FAST_START_SERVERS 来找到这些pq slave进程

    select SPID from V$PROCESS where PID in (select PID from V$FAST_START_SERVERS);

    然后从os层面kill 掉上面select语句的查询结果: kill -9 spid

    4. 关闭fast_start_parallel_rollback
    alter system set fast_start_parallel_rollback=false;

    5.又一次启动 事务恢复(transaction recovery )
    SQL> oradebug setorapid 'SMON's Oracle PID';
    SQL> oradebug event 10513 trace name context off

  • 相关阅读:
    【BZOJ】【1833】【ZJOI2010】count 数字计数
    bzoj2588: Spoj 10628. Count on a tree(树上第k大)(主席树)
    NOIP2017金秋冲刺训练营杯联赛模拟大奖赛第一轮Day2题解
    NOIP2017金秋冲刺训练营杯联赛模拟大奖赛第二轮Day2题解
    51nod 1962 区间计数(单调栈+二分)
    51nod 1486 大大走格子(DP+组合数学)
    bzoj2276: [Poi2011]Temperature(单调队列/堆)
    5028: 小Z的加油店(线段树)
    bzoj2216: [Poi2011]Lightning Conductor(分治决策单调性优化)
    bzoj1057: [ZJOI2007]棋盘制作(悬线法)
  • 原文地址:https://www.cnblogs.com/mfmdaoyou/p/6781597.html
Copyright © 2011-2022 走看看