zoukankan      html  css  js  c++  java
  • DB2 锁问题的监控和解决

    常见的锁问题包括:

    锁等待

    锁超时

    锁升级

    死锁

    而根据问题的特性通常分为两种:

    实时事件:问题正在发生

    历史事件:问题已经过去

    如果实时事件,DBA 可以通过查看表信息、GET SNAPSHOT 或者 db2pd/db2top 查看数据库当前的锁状况;这毕竟少数,往往锁问题都是历史事件,应用通过查看日志才发现存在锁问题,这种情况下,需要数据库本身对锁事件进行监控,如果发生收集相关的信息,方便DBA去分析。

     
    数据库版本 实时事件监控工具 历史事件监控工具
    V9 之前的版本 表函数 SNAP_GET_LOCKWAIT/GET SNAPSHOT FOR LOCKS db2cos
    V9.1 新增管理视图 SYSIBMADM. SNAPLOCKWAIT db2cos
    V9.5   db2cos
    V9.7   事件监控/db2cos
         

     

    通过事件监控抓取锁信息

    配置方法

    1. 创建事件监控(create event monitor)

    1.1 创建bufferpool

    1.2 创建临时表空间

    1.3 创建事件监控

    2. 配置数据库相关参数

    事件监控类型 相关数据库参数
    锁等待事件监控 MON_LOCKWAIT,MON_LW_THRESH                                                                                                                                       
    锁超时事件监控 MON_LOCKTIMEOUT,LOCKTIMEOUT
    死锁事件监控 MON_DEADLOCK,DLCHKTIME

     

    数据库参数 参数详解
    MON_LOCKWAIT 设置锁事件监控对锁信息收集的详细程度,值包括:NONE,WITHOUT_HIST, WITH_HIST,HIST_AND_VALUES;
    MON_LOCKTIMEOUT 同MON_LOCKWAIT, 同时参数LOCKTIMEOUT
    MON_DEADLOCK 同MON_LOCKWAIT
    MON_LW_THRESH 设置锁等待发生的时间阀值,超过该值将会触发锁等待事件监控,单位微妙

    参数配置命令:

    db2 update db cfg using MON_LOCKTIMEOUT HIST_AND_VALUES 
     MON_DEADLOCK HIST_AND_VALUES MON_LOCKWAIT HIST_AND_VALUES 
     MON_LW_THRESH 5000000 
    
  • 相关阅读:
    使用arcpy添加grb2数据到镶嵌数据集中
    使用python把gdb格式的文本文件转为utf-8的格式
    Spring Cloud
    windows 下nginx配置php支持
    nginx开启gzip
    ant design 修改tab样式
    使用arcpy替换工程文件中的栅格图层数据源异常
    cenos 安装hadoop
    失败
    linux挂载新硬盘
  • 原文地址:https://www.cnblogs.com/DBA-Ivan/p/7929884.html
Copyright © 2011-2022 走看看