• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            Prayer

            在一般中尋求卓越
            posts - 1256, comments - 190, trackbacks - 0, articles - 0
              C++博客 :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

            當(dāng)多個(gè) DB2® 用戶并發(fā)地訪問一個(gè)數(shù)據(jù)庫時(shí),鎖等待會(huì)導(dǎo)致響應(yīng)變慢。鎖等待是臨時(shí)性的,因而難以捕捉。然而,當(dāng)出現(xiàn)鎖等待情形時(shí),需要由數(shù)據(jù)庫管理員負(fù)責(zé)確定鎖等待的原因。本文通過例子演示如何使用用于 DB2 for Linux®, UNIX®, and Windows® 的 db2pd 和 db2pdcfg 實(shí)用程序完成該任務(wù)。
            用于鎖監(jiān)視的 db2pd 選項(xiàng)

            db2pd 是用于監(jiān)視各種 DB2 數(shù)據(jù)庫活動(dòng)以及故障排除的實(shí)用程序。它是從 DB2 V8.2 開始隨 DB2 引擎發(fā)布的一個(gè)獨(dú)立的實(shí)用程序,其外觀和功能類似于 Informix onstat 實(shí)用程序。db2pd 是從命令行以一種可選的交互模式執(zhí)行的。該實(shí)用程序運(yùn)行得非常快,因?yàn)樗恍枰@取任何鎖,并且在引擎資源以外運(yùn)行(這意味著它甚至能在一個(gè)掛起的引擎上工作)。通過快照監(jiān)視還可以收集 db2pd 提供的很多監(jiān)視器數(shù)據(jù),但是 db2pd 和快照監(jiān)視的輸出格式卻有很大不同。這使 DBA 可以選擇更符合用戶需求的監(jiān)視替代方法。本文關(guān)注用于鎖監(jiān)視的 db2pd 選項(xiàng)。有一篇由 Sam Poon 撰寫的 developerWorks 文章(參見 參考資料 小節(jié))對(duì) db2pd 的監(jiān)視功能作了更廣泛的介紹。

            下面的圖展示了用于鎖監(jiān)視的 db2pd 選項(xiàng):


            圖 1. 用于鎖監(jiān)視的 db2pd 選項(xiàng)
             

            TranHdl:用于指定事務(wù)句柄,以便只監(jiān)視由特定事務(wù)持有的鎖。
            showlocks:這個(gè)子選項(xiàng)將鎖名稱擴(kuò)展成有意義的解釋。對(duì)于一個(gè)行鎖,該選項(xiàng)顯示以下信息:表空間 ID、表 ID、分區(qū) ID、頁和槽。通過使用編目視圖 SYSCAT.TABLES 上的一個(gè)查詢,很容易將表空間 ID 和表 ID 映射到相應(yīng)的表名:

            清單 1. 將表空間 ID、表 ID 映射到表模式、表名
                                    SELECT TABSCHEMA, TABNAMEFROM SYSCAT.TABLESWHERE TBSPACEID = tbspaceid AND TABLEID = tableid          


            wait:如果指定 wait 子選項(xiàng),則 db2pd 只顯示事務(wù)當(dāng)前正在等待的鎖,以及對(duì)等待情形負(fù)責(zé)的鎖。這個(gè)子選項(xiàng)大大簡(jiǎn)化了鎖等待分析,因?yàn)樗鼘⑤敵鱿拗茷閰⑴c鎖等待情形的鎖。
            db2pd database 和 file 選項(xiàng)不是特定于鎖監(jiān)視的,但是適用于(幾乎)所有 db2pd 調(diào)用。database 選項(xiàng)將 db2pd 返回的監(jiān)視器數(shù)據(jù)限制為某個(gè)數(shù)據(jù)庫的監(jiān)視器數(shù)據(jù)。而 file 選項(xiàng)則允許定義一個(gè)文件,以便將 db2pd 輸出寫到該文件。
            鎖等待分析場(chǎng)景

            接下來,我們開始使用前面介紹的 db2pd 選項(xiàng)來分析一個(gè)示例鎖等待情形。為此,我們創(chuàng)建 DB2 SAMPLE 數(shù)據(jù)庫:


            清單 2. 創(chuàng)建 SAMPLE 數(shù)據(jù)庫
                            db2sampl      


            用戶 A 執(zhí)行事務(wù) A,以根據(jù)每個(gè)經(jīng)理的薪水為他們提供 10% 的獎(jiǎng)金:


            清單 3. 事務(wù) A 執(zhí)行的更新操作
                            UPDATE EMPLOYEESET BONUS = SALARY * 0.1WHERE JOB = 'MANAGER'      


            當(dāng)事務(wù) A 仍然在運(yùn)行(因?yàn)橛脩?A 還沒有使用 COMMIT 或 ROLLBACK 終止該事務(wù))時(shí),用戶 B 執(zhí)行事務(wù) B,以將每個(gè)雇員的薪水提高 2%:


            清單 4. 事務(wù) B 執(zhí)行的更新操作
                            UPDATE EMPLOYEESET SALARY = SALARY * 0.02      


            由于事務(wù) B 沒有完成,用戶 B 請(qǐng)求 DBA 確定問題的原因。于是,DBA 調(diào)用 db2pd,看是否存在鎖等待情形:


            清單 5. 檢查鎖等待情形
                            db2pd -db sample -locks wait showlocksDatabase Partition 0 -- Database SAMPLE -- Active -- Up 3 days 08:33:05Locks:Address    TranHdl    Lockname                   Type       Mode Sts Owner      Dur 0x050A0240 6          02000600050040010000000052 Row        ..X  W   2          1   0x050A0DB0 2          02000600050040010000000052 Row        ..X  G   2          1   HoldCount  Att  ReleaseFlg0          0x00 0x40000000   TbspaceID 2  TableID 6  PartitionID 0 Page 320 Slot 50          0x00 0x40000000   TbspaceID 2  TableID 6  PartitionID 0 Page 320 Slot 5      


            db2pd 報(bào)告 ID 為 2 的表空間中一個(gè) ID 為 6 的表上有一個(gè)行鎖存在鎖等待情形。通過檢查 SYSCAT.TABLES,DBA 斷定表 EMPLOYEE 上的確存在鎖等待。


            清單 6. 確定鎖等待情形所涉及的表

             

             

            本文轉(zhuǎn)自IBM Developerworks中國(guó)

             

            本文來自CSDN博客,轉(zhuǎn)載請(qǐng)標(biāo)明出處:http://blog.csdn.net/ibmjournal/archive/2008/10/07/3028834.aspx

            久久综合九色综合精品| 潮喷大喷水系列无码久久精品| 97久久精品无码一区二区天美| 精品国产VA久久久久久久冰| 亚洲综合伊人久久综合| 久久亚洲AV成人无码国产| 国产精品九九久久免费视频 | 久久久久久一区国产精品| 三级韩国一区久久二区综合| 久久久久se色偷偷亚洲精品av| 韩国免费A级毛片久久| 国产亚洲精久久久久久无码AV| 亚洲国产日韩综合久久精品| 亚洲欧美伊人久久综合一区二区 | 香蕉久久av一区二区三区| 国产一级做a爰片久久毛片| 香蕉99久久国产综合精品宅男自 | 大伊人青草狠狠久久| 热久久国产欧美一区二区精品 | 亚洲精品国产第一综合99久久| 69国产成人综合久久精品| 三级片免费观看久久| 99久久国产热无码精品免费| 伊人久久大香线蕉无码麻豆| 久久中文字幕一区二区| 久久精品国产亚洲AV麻豆网站| 亚洲国产综合久久天堂| 国产伊人久久| 青青草原1769久久免费播放| 91精品国产乱码久久久久久 | 亚洲国产精品狼友中文久久久 | 99久久国语露脸精品国产| 久久91精品国产91久| 一本大道加勒比久久综合| 国产精品青草久久久久婷婷| 久久精品无码专区免费 | 久久精品天天中文字幕人妻 | 精品久久久久久无码专区| 久久乐国产精品亚洲综合| 精品国产乱码久久久久久浪潮 | 亚洲午夜久久久|