看板 Database 關於我們 聯絡資訊
資料庫名稱:SQL Server 2000 資料庫版本: 內容/問題描述: 最近公司在TableA會有嚴重的Lock 導致要更新或者新增/查詢都無法使用 觀看該張Table被鎖定類型都屬於key,鎖定的type屬於S 數量相當的多 到Server端下觀看這些被lock的內容 sql的陳述式卻都是空白 目前都只能手動kill掉才能讓TableA恢復正常 有沒有辦法可以知道這些lock是來自於哪裡嗎? P.S有懷疑一隻網頁程式可能是上述問題的發生源頭 想請問版上專業大大判斷看看,是否有可能 程式裡面使用SqldataAdapter來做"跨Server"的Select 語法大略如下 Select '要使用的欄位' from ServerB.[dbo].[TableB] as a left outer join ServerA.[dbo].[TableA] as b <--被Lock的 on (a.col_a = b.col_b collate Chinese_Taiwan_Stroke_CI_AS and a.col_a1 = b.col_b1) where '篩選的查詢' 若Select30秒內沒有辦法完成,基本上就都會TimeOut掉 我是覺得30秒會自動TimeOut理論上感覺應該不會這麼大量去Lock到Table才對 但是不確定,所以上來問看看 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 202.39.250.90 ※ 文章網址: http://www.ptt.cc/bbs/Database/M.1416815998.A.4CA.html
TeemingVoid: 請試試 exec sp_who 查一下(特別留意 blk 欄位)。 11/24 16:54
rockchangnew: 30秒是ap連結db的time out歐,該query在db上還是在 11/24 17:17
rockchangnew: 跑。所以query一多當然會慘 11/24 17:18
rockchangnew: 先查一下為何query要那麼久 11/24 17:20