日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

SQL Server 2008 R2 死鎖監控

系統 2118 0

死鎖監控一直都很麻煩,我沒有找到很好的方法

如果大家有好的方法,我也很想學習一下

我的方法比較簡單:

 1.sp_altermessage 1205 修改1205 錯誤讓他能夠寫入日志 這樣 代理中的警告才能使用

 2.當然是啟動 代理中的警告。開數據庫郵件,會把死鎖錯誤發送到操作員郵箱里面。缺點就是沒有詳細的死鎖信息。

? ?3.使用sql server 2008 r2 自帶的 擴展事件中system_health默認是開啟的,里面會抓取比較多的值

  你可以使用 ??sys.dm_xe_session_events ?聯合?sys.dm_xe_sessions 查看 抓取了那些值 當然其中一個是死鎖信息。

  ? 當產生死鎖的時候你何以使用: 

      
        SELECT
      
      
        REPLACE
      
      
        (


      
      
        REPLACE
      
      (XEventData.XEvent.value(
      
        '
      
      
        (data/value)[1]
      
      
        '
      
      , 
      
        '
      
      
        varchar(max)
      
      
        '
      
      
        ), 


      
      
        '
      
      
        <victim-list>
      
      
        '
      
      , 
      
        '
      
      
        <deadlock><victim-list>
      
      
        '
      
      
        ),


      
      
        '
      
      
        <process-list>
      
      
        '
      
      ,
      
        '
      
      
        </victim-list><process-list>
      
      
        '
      
      
        )




      
      
        FROM
      
      
        

(
      
      
        select
      
      
        CAST
      
      (target_data 
      
        as
      
       xml) 
      
        as
      
      
         TargetData


      
      
        from
      
      
         sys.dm_xe_session_targets st


      
      
        join
      
       sys.dm_xe_sessions s 
      
        on
      
       s.address 
      
        =
      
      
         st.event_session_address


      
      
        where
      
       name 
      
        =
      
      
        '
      
      
        system_health
      
      
        '
      
       ) 
      
        AS
      
      
         Data


      
      
        CROSS
      
       APPLY TargetData.nodes (
      
        '
      
      
        //RingBufferTarget/event
      
      
        '
      
      ) 
      
        AS
      
      
         XEventData (XEvent)


      
      
        where
      
       XEventData.XEvent.value(
      
        '
      
      
        @name
      
      
        '
      
      , 
      
        '
      
      
        varchar(4000)
      
      
        '
      
      ) 
      
        =
      
      
        '
      
      
        xml_deadlock_report
      
      
        '
      
    

查詢所有的死鎖信息,當然如果出現內存瓶頸的時候能保存多久我不確定,如果死鎖太多你無法順利的找到,你想把結果減少一點,可以在每次查詢死鎖后使用:

      
        ALTER
      
       EVENT SESSION system_health 
      
        ON
      
      
         SERVER

STATE 
      
      
        =
      
      
         stop


      
      
        go
      
      
        ALTER
      
       EVENT SESSION system_health 
      
        ON
      
      
         SERVER

STATE 
      
      
        =
      
       start
    

關閉并打開這個擴展事件的session,那么保存在內存的記錄就會被清空。下次的死鎖信息就是最新的。

SQL Server 2008 R2 死鎖監控


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦?。。?/p>

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 格尔木市| 吕梁市| 金川县| 精河县| 阳东县| 青岛市| 临武县| 剑河县| 蒙阴县| 象州县| 南康市| 秭归县| 蓬莱市| 股票| 文登市| 隆化县| 甘孜县| 汾阳市| 潜山县| 门源| 海伦市| 南澳县| 论坛| 盱眙县| 晋江市| 黔西县| 申扎县| 星座| 商南县| 鄯善县| 丁青县| 旺苍县| 冷水江市| 应城市| 娱乐| 永善县| 漳浦县| 开阳县| 万州区| 西贡区| 长汀县|