本篇文章為大家展示了如何進(jìn)行Sqlserver死鎖問(wèn)題的分析,內(nèi)容簡(jiǎn)明扼要并且容易理解,絕對(duì)能使你眼前一亮,通過(guò)這篇文章的詳細(xì)介紹希望你能有所收獲。
創(chuàng)新互聯(lián)云計(jì)算的互聯(lián)網(wǎng)服務(wù)提供商,擁有超過(guò)13年的服務(wù)器租用、達(dá)州主機(jī)托管、云服務(wù)器、網(wǎng)絡(luò)空間、網(wǎng)站系統(tǒng)開發(fā)經(jīng)驗(yàn),已先后獲得國(guó)家工業(yè)和信息化部頒發(fā)的互聯(lián)網(wǎng)數(shù)據(jù)中心業(yè)務(wù)許可證。專業(yè)提供云主機(jī)、網(wǎng)絡(luò)空間、主機(jī)域名、VPS主機(jī)、云服務(wù)器、香港云服務(wù)器、免備案服務(wù)器等。
問(wèn)題展現(xiàn):
sqlserver2014死鎖
Web前端查詢報(bào)錯(cuò):
死鎖問(wèn)題:
問(wèn)題重現(xiàn)去抓死鎖:
數(shù)據(jù)庫(kù)開啟死鎖跟蹤和trace跟蹤來(lái)抓取死鎖腳本和執(zhí)行SQL:
dbcc traceon(1222,-1)
死鎖腳本會(huì)記錄在errorlog里面。
執(zhí)行SQL可以通過(guò)trace跟蹤抓取到:
服務(wù)器進(jìn)程ID:67的SQL可以抓取到。但是服務(wù)器進(jìn)程ID:110的SQL未執(zhí)行完,被犧牲掉了,抓取不到,只能在死鎖腳本里面看到部分SQL。
查詢errorlog的腳本:
exec xp_readerrorlog 0
go
可以看到打紅叉的部分是被死鎖犧牲掉的process
這個(gè)死鎖主要是一個(gè)服務(wù)器進(jìn)程ID:67,一個(gè)是服務(wù)器進(jìn)程ID:110
服務(wù)器進(jìn)程ID:67是個(gè)insert事務(wù),占用IX鎖
服務(wù)器進(jìn)程ID:110是個(gè)select事務(wù),要求S鎖
產(chǎn)生頁(yè)爭(zhēng)用,導(dǎo)致了頁(yè)鎖。最后選擇犧牲掉了服務(wù)器進(jìn)程ID:110
當(dāng)前解決辦法,對(duì)服務(wù)器進(jìn)程ID:110這個(gè)select事務(wù)里面的查詢SQL最后加with(nolock)
上述內(nèi)容就是如何進(jìn)行Sqlserver死鎖問(wèn)題的分析,你們學(xué)到知識(shí)或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識(shí)儲(chǔ)備,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。
本文標(biāo)題:如何進(jìn)行Sqlserver死鎖問(wèn)題的分析
標(biāo)題URL:http://www.rwnh.cn/article32/jijpsc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設(shè)計(jì)、標(biāo)簽優(yōu)化、靜態(tài)網(wǎng)站、網(wǎng)站維護(hù)、做網(wǎng)站、外貿(mào)網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)