青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

Prayer

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

DB2診斷系列之---定位鎖等待問題

Posted on 2009-08-07 09:29 Prayer 閱讀(367) 評論(0)  編輯 收藏 引用 所屬分類: DB2
  在DB2應用中,我們經常會碰到sql執行很慢,但是數據庫cpu和內存使用率又不高的情況,類似的問題基本上由于鎖,排序等原因造成,本文主要描述如何去定位鎖等待問題,誰在鎖等待?等待誰持有的鎖?鎖在那個表?

  一、測試準備

  1、先在session1執行如下操作,創建測試表

  #db2 connect to eos
  #export DB2OPTIONS=+C
  #db2 "create table tacy_test (a int not null primary key,b varchar(10))"
  #db2 "insert into tacy_test values(1,'a')"
  #db2 "insert into tacy_test values(2,'a')"
  #db2 "insert into tacy_test values(3,'a')"
  #db2 "insert into tacy_test values(4,'a')"
  #db2 commit

  2、在session2執行如下操作

  #db2 connect to eos
  #export DB2OPTIONS=+C

  二、產生一個lock wait

  在session1做一個表更新:

  #db2 "update tacy_test set b='b' where a=4"

  sql執行成功

  在session2做同樣更新操作:

  #db2 "update tacy_test set b='c' where a=4"

  進程被掛起等待

  三、定位鎖等待

  1、先來看看應用的情況:

  #db2pd -db eos -applications

  Database Partition 0 -- Database EOS -- Active -- Up 0 days 07:37:37

  Applications:

  Address AppHandl [nod-index] NumAgents CoorPid Status C-AnchID C-StmtUID L-AnchID L-StmtUID Appid

  0x10140040 8 [000-00008] 1 8425 Lock-wait 80 2 66 1 *LOCAL.db2inst1.071124043739

  0x100CE540 7 [000-00007] 1 8358 UOW-Waiting 0 0 80 2 *LOCAL.db2inst1.071124043708

  可以看到有一個應用的狀態處于Lock-wait

  2、現在我們來看看應用在等什么

  #db2pd -db eos -locks showlock wait

  Database Partition 0 -- Database EOS -- Active -- Up 0 days 07:42:56

  Locks:

  Address TranHdl Lockname Type Mode Sts Owner Dur HldCnt Att Rlse

  0x2C8E0760 3 02001806078066020000000052 Row ..X W 2 1 0 0 0x0 TbspaceID 2 TableID 1560 RecordID 0x2668007

  鎖的類型為Row(行鎖),X鎖(排他鎖),下面是我們最關心的鎖的位置

  TbspaceID 2 TableID 1560 RecordID 0x2668007

  其中TbspaceID為表空間ID,TableID為表的ID,RecordID代表具體位置,全部應該是0x0266807,其中前面三個字節為page number,為0x02668,后面一個字節代表solt identifier,為0x07

  3、找到相應的表

  #db2 "select tbspace,tabschema,tabname,tableid,tbspaceid from syscat.tables where tbspaceid=2 and tableid=1560"

  TBSPACE TABSCHEMA TABNAME TABLEID TBSPACEID

  ------------ ----------- ---------- ------- ---------

  USERSPACE1 DB2INST1 TACY_TEST 1560 2

  1 record(s) selected.
  
  4、根據RecordID找到鎖在哪行

 

  db2提供了一個強大的數據分析工具db2dart,可以dump出相應的page數據

  #db2dart eos /dd /tsi 2 /oi 1560 /ps 157312p /np 1 /v y

  Warning: The database state is not consistent.

  Warning: Reorg rows MAY be due to the inconsistent state of the database.

  DB2DART Processing completed with warning(s)!

  Complete DB2DART report found in:

  /home/db2inst1/sqllib/db2dump/DART0000/EOS.RPT

  其中tsi為表空間id(2),oi為表id(1560),ps為page number(0x0266807),需要轉換為十進制,在結尾必須加p,np代表你要獲取的頁數,v為是否詳細輸出

  現在我們來看看EOS.RPT

  ______________________________________________________________________________

  _______ DART _______

  D a t a b a s e A n a l y s i s a n d R e p o r t i n g T o o l

  IBM DB2 6000

  ______________________________________________________________________________

  DART (V8.1.0) Report:

  2007-11-24-20.59.51.355893

  Database Name: EOS

  Report name: EOS.RPT

  Old report back-up: EOS.BAK

  Database Subdirectory: /opt/db2/db2inst1/NODE0000/SQL00001

  Operational Mode: Database Inspection Only (INSPECT)

  ______________________________________________________________________________

  ------------------------------------------------------------------------------

  Action option: DD

  Table-object-ID: 1560; Tablespace-ID: 2; First-page: 157312p; Number-pages: 1; Verbose: y

  Warning: The database state is not consistent.

  Warning: Reorg rows MAY be due to the inconsistent state of the database.

  Connecting to Buffer Pool Services...

  Table object report phase start.

  Dump format is verbose.

  ______________________________________

  Page 0 of object 1560 from table space 2.

  BPS Page Header:

  Page Data Offset = 48

  Page Data Length = 4048

  Page LSN = 0000 AE97 AE41

  Object Page Number = 0

  Pool Page Number = 157312

  Object ID = 1560

  Object Type = Data Object

  Data Page Header:

  Slot Count = 8

  Total Free Space = 2784

  Total Reserve Space = 0

  Youngest Reserve Space = n/a

  Youngest TID = n/a

  Free Space Offset = 2799

  Maximum Record Size = 23

  Data Records:

  Slot 0:

  Offset Location = 3996 (xF9C)

  Record Length = 32 (x20)

  Record Type = Data Object Header Control Record

  Page count = 1

  Object Creation LSN = 0000 AE97 800C

  Object State = x0000

  UDI Since Runstats = 0

  DART Field = x00000000

  Slot 1:

  Offset Location = 2992 (xBB0)

  Record Length = 1004 (x3EC)

  Record Type = Free Space Control Record

  Free space entries:

  0: 2884 (x0B44), 4028 (x0FBC), 4028 (x0FBC), 4028 (x0FBC)

  4: 4028 (x0FBC), 4028 (x0FBC), 4028 (x0FBC), 4028 (x0FBC)

  8: 4028 (x0FBC), 4028 (x0FBC), 4028 (x0FBC), 4028 (x0FBC)

  省略。。。

  492: 4028 (x0FBC), 4028 (x0FBC), 4028 (x0FBC), 4028 (x0FBC)

  496: 4028 (x0FBC), 4028 (x0FBC), 4028 (x0FBC), 4028 (x0FBC)

  Slot 2:

  Offset Location = 2916 (xB64)

  Record Length = 76 (x4C)

  Record Type = Table Directory Record

  MetaIndex Root Page = 157377

  Index Type = 2

  Table Descriptor Pointer -- Page 157312 Slot 3

  Max Insert Search = 0

  Flags = x02000200

  bit representation = 00000010 00000000 00000010 00000000

  Check pending info:

  Constraint status = x00

  Constraint RID = Page 0 Slot 0

  last BID = x00000000

  Slot 3:

  Offset Location = 2892 (xB4C)

  Record Length = 24 (x18)

  Record Type = Table Description Record

  Number of Columns = 2

  Column 1:

  Type is Long Integer

  Length = 4

  Prohibits NULLs

  Prohibits Default

  Fixed offset: 0

  Column 2:

  Type is Fixed Length Character String

  Length = 10

  Allows NULLs

  Prohibits Default

  Fixed offset: 4

  Slot 4:

  Offset Location = 2869 (xB35)

  Record Length = 23 (x17)

  Record Type = Table Data Record (FIXEDVAR)

  Fixed part length value = 15

  Column 1:

  Fixed offset: 0

  Type is Long Integer

  Value = 1

  Column 2:

  Fixed offset: 4

  Type is Fixed Length Character String

  61202020 20202020 2020 a

  Slot 5:

  Offset Location = 2846 (xB1E)

  Record Length = 23 (x17)

  Record Type = Table Data Record (FIXEDVAR)

  Fixed part length value = 15

  Column 1:

  Fixed offset: 0

  Type is Long Integer

  Value = 2

  Column 2:

  Fixed offset: 4

  Type is Fixed Length Character String

  61202020 20202020 2020 a

  Slot 6:

  Offset Location = 2823 (xB07)

  Record Length = 23 (x17)

  Record Type = Table Data Record (FIXEDVAR)

  Fixed part length value = 15

  Column 1:

  Fixed offset: 0

  Type is Long Integer

  Value = 3

  Column 2:

  Fixed offset: 4

  Type is Fixed Length Character String

  61202020 20202020 2020 a

  Slot 7:

  Offset Location = 2800 (xAF0)

  Record Length = 23 (x17)

  Record Type = Table Data Record (FIXEDVAR)

  Fixed part length value = 15

  Column 1:

  Fixed offset: 0

  Type is Long Integer

  Value = 4

  Column 2:

  Fixed offset: 4

  Type is Fixed Length Character String

  61202020 20202020 2020 a

  Slots Summary: Total=8, In-use=8, Deleted=0.

  Table object report phase end.

  ______________________________________

  DB2DART Processing completed with warning(s)!

  Warning(s) detected during processing.

  ______________________________________

  Complete DB2DART report found in:

  /home/db2inst1/sqllib/db2dump/DART0000/EOS.RPT

  _______ D A R T P R O C E S S I N G C O M P L E T E _______

  找到Solt 7 (0x07),ok,你現在可以清楚的知道應用等待的Row為(4,a)

  總結

  通過上面的方法,我們簡單描述了一個db2鎖問題的定位方法,希望能給大家在分析和定位應用性能問題的時候起到一定的幫助

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            国产一区二区0| 欧美综合第一页| 久久精品99| 先锋影音网一区二区| 亚洲小少妇裸体bbw| 国产精品99久久久久久白浆小说 | 香蕉久久精品日日躁夜夜躁| 亚洲香蕉在线观看| 亚洲一区二区三区高清| 亚洲欧美日韩中文视频| 欧美一区二区三区视频免费播放 | 欧美黄色大片网站| 亚洲二区在线观看| 亚洲国产视频a| 一区二区不卡在线视频 午夜欧美不卡在 | 久久一综合视频| 蜜桃av一区| 欧美日韩精品一区二区三区四区| 欧美日韩一区二区免费在线观看 | 一区二区三区波多野结衣在线观看| 一区二区三区成人精品| 午夜精品视频网站| 久热精品视频| 一本久道久久综合婷婷鲸鱼| 欧美在线www| 欧美精品久久一区二区| 国产精品视频网| 亚洲毛片一区| 黄色精品免费| 亚洲男女毛片无遮挡| 久久这里只精品最新地址| 最新成人av网站| 欧美一区二区高清| 欧美丝袜一区二区三区| 亚洲丶国产丶欧美一区二区三区 | 欧美午夜精品久久久久久人妖| 狠狠色2019综合网| 亚洲一区二区影院| 亚洲福利视频一区二区| 亚洲夜间福利| 欧美另类videos死尸| 影音欧美亚洲| 欧美一区在线直播| 久久99伊人| 一区二区三区高清不卡| 你懂的亚洲视频| 国产综合视频在线观看| 午夜精品成人在线| 99综合精品| 欧美日韩在线一二三| 欧美三级电影一区| 亚洲精品九九| 欧美电影美腿模特1979在线看| 亚洲综合色在线| 欧美三级在线视频| 99一区二区| 欧美国产精品人人做人人爱| 久久精品30| 国内精品免费午夜毛片| 先锋影音一区二区三区| 一区二区三区精品久久久| 国产九九精品视频| 国产精品视频精品| 亚洲欧美日韩国产一区二区| 亚洲乱码视频| 欧美激情亚洲综合一区| 亚洲欧洲一区二区三区| 欧美激情网站在线观看| 免费h精品视频在线播放| 在线日韩av永久免费观看| 老司机成人在线视频| 久久婷婷综合激情| 1024成人网色www| 久久一区二区视频| 久久久久www| 亚洲第一偷拍| 亚洲国产欧洲综合997久久| 欧美激情第3页| 99在线观看免费视频精品观看| 亚洲精品专区| 国产精品久久久久久久久借妻| 亚洲欧美日本国产专区一区| 午夜在线视频观看日韩17c| 激情五月婷婷综合| 欧美激情视频一区二区三区不卡| 欧美精品一区二区三| 亚洲在线一区二区| 欧美一区二区三区另类| 91久久综合亚洲鲁鲁五月天| 亚洲人成精品久久久久| 国产精品久久久久秋霞鲁丝| 久久久久国产免费免费| 牛牛影视久久网| 亚洲欧美中文日韩在线| 欧美在线高清| 亚洲日本成人在线观看| 亚洲午夜一级| 亚洲高清自拍| 亚洲视频一起| 亚洲国产专区| 亚洲欧美日韩中文播放| 91久久夜色精品国产九色| 一区二区三区免费在线观看| 激情久久综合| 一区二区高清在线观看| 国模 一区 二区 三区| 亚洲乱码视频| 亚洲第一久久影院| 亚洲欧美日韩精品在线| 日韩午夜高潮| 久久久久亚洲综合| 欧美一级大片在线观看| 欧美国产免费| 久久久亚洲综合| 国产精品a久久久久久| 亚洲福利久久| 在线观看一区二区精品视频| 亚洲视频在线看| 在线综合+亚洲+欧美中文字幕| 久久久综合网站| 久久久999| 国产情人节一区| 亚洲欧美日韩精品综合在线观看| 亚洲欧美日韩国产另类专区| 欧美午夜精品久久久| 亚洲欧美视频一区二区三区| 亚洲经典在线看| 在线成人免费观看| 久久精品国产综合精品| 久久精品亚洲乱码伦伦中文 | 国产精品av久久久久久麻豆网| 欧美成人一区二区| 亚洲高清久久| 免费影视亚洲| 亚洲高清三级视频| 日韩亚洲欧美一区| 欧美日韩在线精品一区二区三区| 亚洲欧洲在线一区| 在线视频免费在线观看一区二区| 欧美精品福利| 亚洲精品资源| 亚洲欧美日本日韩| 国产精品日韩精品| 午夜久久影院| 久久精品91久久香蕉加勒比| 国产日韩欧美不卡| 欧美一区二区在线看| 小嫩嫩精品导航| 国内精品久久久久久 | 亚洲高清视频在线| 久久精品国产综合精品| 欧美一区二区日韩| 国产精品久久久久久久久久免费 | 欧美1区2区视频| 亚洲日韩中文字幕在线播放| 久久精视频免费在线久久完整在线看 | 在线一区日本视频| 欧美日韩三级| 91久久在线播放| 国产精品久久福利| 欧美在线观看一区| 久久久精品午夜少妇| 国产亚洲精品自拍| 欧美一区二区三区喷汁尤物| 欧美成人资源网| 最新69国产成人精品视频免费| 久久一区二区三区四区| 欧美激情久久久久久| 亚洲天堂成人| 欧美亚韩一区| 亚洲综合成人婷婷小说| 欧美专区在线| 国产又爽又黄的激情精品视频| 欧美在线一二三区| 欧美成人免费全部| 日韩午夜视频在线观看| 欧美另类变人与禽xxxxx| av成人免费在线观看| 亚洲一区二区免费| 国产欧美日韩三级| 久久久xxx| 亚洲人成网在线播放| 亚洲视频在线看| 欧美日韩精品欧美日韩精品一| 亚洲国产欧美一区二区三区久久 | 亚洲国产一区二区a毛片| 久久久久久久久一区二区| 午夜精品福利一区二区蜜股av| 亚洲福利在线看| 欧美精品久久久久久久| 一区二区三区日韩精品视频| 欧美一区二区三区四区在线观看地址| 亚洲高清在线播放| 欧美图区在线视频| 欧美一区二区三区电影在线观看 | 日韩午夜电影| 亚洲欧美国产视频| 一本色道久久综合亚洲精品小说| 国产精品久久久久7777婷婷| 亚洲欧美自拍偷拍|