日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

輕松解決IBM DB2數(shù)據(jù)庫定位鎖等待問題

瀏覽:26日期:2023-11-09 14:56:04
在應用中,我們經(jīng)常會碰到sql執(zhí)行很慢,但是數(shù)據(jù)庫cpu和內(nèi)存使用率又不高的情況,類似的問題基本上由于鎖,排序等原因造成,本文主要描述如何去定位鎖等待問題,誰在鎖等待?等待誰持有的鎖?鎖在那個表?

一、測試準備

1、先在session1執(zhí)行如下操作,創(chuàng)建測試表

#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執(zhí)行如下操作

#db2 connect to eos

#export DB2OPTIONS=+C

二、產(chǎn)生一個lock wait

在session1做一個表更新:

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

sql執(zhí)行成功

在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

可以看到有一個應用的狀態(tài)處于Lock-wait

2、現(xiàn)在我們來看看應用在等什么

#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,其中前面三個字節(jié)為page number,為0x02668,后面一個字節(jié)代表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、根據(jù)RecordID找到鎖在哪行

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

#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代表你要獲取的頁數(shù),v為是否詳細輸出

現(xiàn)在我們來看看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

Slot1:

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

Slot5:

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

Column1:

Fixed offset: 0

Type is Long Integer

Value = 4

Column2:

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,你現(xiàn)在可以清楚的知道應用等待的Row為(4,a)

總結

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

日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
国产探花一区二区| 国产欧美一区二区精品久久久 | 一级成人国产| 中文在线一区| 亚洲丝袜美腿一区| 日韩福利视频网| 欧美一级一区| 精品一区视频| 欧美精品资源| 丝袜美腿诱惑一区二区三区 | 久久久久一区| 午夜一区在线| 91精品尤物| 国产亚洲字幕| 亚洲精选成人| 国产精品大片免费观看| 国产+成+人+亚洲欧洲在线| 日韩欧美一区二区三区免费观看| 黄色免费成人| 国产精品片aa在线观看| 日韩福利视频导航| 中文字幕在线看片| 久久午夜精品| 精品免费av| 亚洲主播在线| 欧美国产日韩电影| 国产高清久久| 国产精品白浆| 香蕉久久国产| 国产日韩一区二区三区在线播放| 国产模特精品视频久久久久| 国产麻豆精品| 日韩精品一级中文字幕精品视频免费观看 | 亚洲精品伊人| 日本不卡免费高清视频在线| 免费在线观看日韩欧美| 在线综合亚洲| 亚洲另类av| 亚洲播播91| 国产欧美日韩精品一区二区三区 | 日韩不卡一二三区| 久久久久99| 麻豆一区二区三| 日韩和欧美一区二区三区| 国产精品av一区二区| 精品成人18| 国产精品亚洲综合色区韩国| 国产亚洲福利| 极品日韩av| 黄色aa久久| 国产极品模特精品一二 | 亚洲精品四区| 在线视频免费在线观看一区二区| 在线中文字幕播放| 91中文字幕精品永久在线| 麻豆久久久久久| 久久激五月天综合精品| 久久亚洲色图| 亚洲黄色在线| 在线亚洲成人| 蜜桃av一区二区三区电影| 伊人精品视频| 久久av一区二区三区| 免费在线小视频| sm久久捆绑调教精品一区| 精品欧美视频| 久久久777| 香蕉视频亚洲一级| 欧美一级二级三级视频| 你懂的国产精品永久在线| 欧美91在线|欧美| 欧美国产小视频| 日韩欧美一区二区三区在线视频| 亚洲91视频| 蜜桃久久久久久| 国产乱子精品一区二区在线观看| 国产精品2023| 99久久激情| 欧美手机在线| 最新国产精品视频| 欧美国产视频| 美女久久久久| 欧美久久亚洲| 神马午夜久久| 日本免费一区二区视频| 国产综合婷婷| 亚洲人亚洲人色久| 免费在线亚洲欧美| 不卡一区2区| 欧美日本不卡高清| 秋霞国产精品| 青草国产精品久久久久久| 中文在线中文资源| 伊人久久成人| 国产精品1区| 视频一区欧美精品| 色黄视频在线观看| 天堂精品久久久久| 深夜视频一区二区| 国产精品亚洲四区在线观看 | 精品免费av| 六月丁香综合| 欧美亚洲国产激情| 欧美激情 亚洲a∨综合| 亚洲小说欧美另类婷婷| 欧美国产极品| 日韩不卡在线观看日韩不卡视频| 99久久亚洲精品| 精品久久97| 国产日本亚洲| 老鸭窝毛片一区二区三区| 日韩免费高清| 成人一二三区| 精品中文字幕一区二区三区 | 久久国产亚洲| 国产精品成久久久久| 国产日产高清欧美一区二区三区| 在线国产一区二区| 国产日韩视频| 香蕉久久久久久久av网站| 秋霞影院一区二区三区| 欧美成人aaa| 亚洲精品影视| 视频一区二区三区在线| 欧美午夜不卡| 尤物tv在线精品| 中文另类视频| 蜜臀久久精品| 日韩精品水蜜桃| 欧美羞羞视频| 国产一区视频在线观看免费| 日韩毛片视频| 麻豆视频在线观看免费网站黄| 999久久久亚洲| 日本美女一区| 欧美大黑bbbbbbbbb在线| 日韩一级精品| 国产亚洲一级| 综合一区二区三区| 国产精品一区二区精品视频观看| 老牛国产精品一区的观看方式| 在线亚洲免费| 91亚洲精品在看在线观看高清| 青青草国产成人99久久| 麻豆久久久久久久| 欧美日中文字幕| 亚洲一区成人| 蜜臀va亚洲va欧美va天堂 | 在线国产一区二区| 丁香婷婷久久| 国产精品伊人| 亚洲永久av| 老牛影视一区二区三区| 国产精品欧美三级在线观看| 久久uomeier| 九一成人免费视频| 性色一区二区| 精品国产91| 亚洲三级国产| 久久国产三级| 日韩天堂av| 美女在线视频一区| 夜夜嗨网站十八久久| 久久精品毛片| 日韩一区二区三区在线看| 午夜精品久久久久久久久久蜜桃| 在线日韩视频| 婷婷视频一区二区三区| 精品国产aⅴ| 日韩一区二区三免费高清在线观看| 国内不卡的一区二区三区中文字幕| 国产96在线亚洲| 亚洲精品系列| 久久一区二区三区喷水| 亚洲我射av| 久久影院一区| 成人午夜网址| 国产精品一区二区三区av麻| 在线一区欧美| 91九色精品| 久久精品观看| 91视频一区| 久久精品国产成人一区二区三区| 亚洲一区二区免费在线观看| 欧美精选一区二区三区| 国产一区二区三区网| 欧美一区影院| 日本成人在线视频网站| 秋霞影院一区二区三区| 日本久久一区| 国产成人精品亚洲线观看| 亚洲欧美日本日韩| 日韩午夜一区| 视频一区欧美精品| 91久久国产| 亚洲乱亚洲高清| 国产欧美激情| 久久不见久久见中文字幕免费| 青青草伊人久久| 精品午夜av|