<dfn id="w48us"></dfn><ul id="w48us"></ul>
  • <ul id="w48us"></ul>
  • <del id="w48us"></del>
    <ul id="w48us"></ul>
  • sql server中避免死鎖的方法

    時間:2024-10-28 23:42:22 SQL 我要投稿
    • 相關推薦

    sql server中避免死鎖的方法

      一、死鎖的四個必要條件

      1、互斥條件(Mutual exclusion):資源不能被共享,只能由一個進程使用。

      2、請求與保持條件(Hold and wait):已經得到資源的進程可以再次申請新的資源。

      3、非剝奪條件(No pre-emption):已經分配的資源不能從相應的進程中被強制地剝奪。

      4、循環等待條件(Circular wait):系統中若干進程組成環路,該環路中每個進程都在等待相鄰進程正占用的資源。

      二、 避免死鎖

      1、按同一順序訪問對象

      如果所有并發事務按同一順序訪問對象,則發生死鎖的可能性會降低。例如,如果兩個并發事務獲得 Supplier 表上的鎖,然后獲得 Part 表上的鎖,則在其中一個事務完成之前,另一個事務被阻塞在 Supplier 表上。第一個事務提交或回滾后,第二個事務繼續進行。不發生死鎖。將存儲過程用于所有的數據修改可以標準化訪問對象的順序。

      2、避免事務中的用戶交互

      避免編寫包含用戶交互的事務,因為運行沒有用戶交互的批處理的速度要遠遠快于用戶手動響應查詢的速度,例如答復應用程序請求參數的提示。例如,如果事務正在等待用戶輸入,而用戶去吃午餐了或者甚至回家過周末了,則用戶將此事務掛起使之不能完成。這樣將降低系統的吞吐量,因為事務持有的任何鎖只有在事務提交或回滾時才會釋放。即使不出現死鎖的情況,訪問同一資源的其它事務也會被阻塞,等待該事務完成。

      3、保持事務簡短并在一個批處理中

      在同一數據庫中并發執行多個需要長時間運行的事務時通常發生死鎖。事務運行時間越長,其持有排它鎖或更新鎖的時間也就越長,從而堵塞了其它活動并可能導致死鎖。

      保持事務在一個批處理中,可以最小化事務的網絡通信往返量,減少完成事務可能的延遲并釋放鎖。

      4、使用低隔離級別

      確定事務是否能在更低的隔離級別上運行。執行提交讀允許事務讀取另一個事務已讀取(未修改)的數據,而不必等待第一個事務完成。使用較低的隔離級別(例如提交讀)而不使用較高的隔離級別(例如可串行讀)可以縮短持有共享鎖的時間,從而降低了鎖定爭奪。

      5、使用綁定連接

      使用綁定連接使同一應用程序所打開的兩個或多個連接可以相互合作。次級連接所獲得的任何鎖可以象由主連接獲得的鎖那樣持有,反之亦然,因此不會相互阻塞

      6、SELECT語句加With(NoLock)提示

      默認情況下SELECT語句會對查詢到的資源加S鎖(共享鎖),S鎖與X鎖(排他鎖)不兼容;但加上With(NoLock)后,SELECT不對查詢到的資源加鎖(或者加Sch-S鎖,Sch-S鎖可以與任何鎖兼容);從而可以是這兩條SQL可以并發地訪問同一資源。當然,此方法適合解決讀與寫并發死鎖的情況,但加With(NoLock)可能會導致臟讀。

    【sql server中避免死鎖的方法】相關文章:

    Sql Server、Access數據排名的實現方法07-09

    如何快速掌握SQL Server中的日志轉移08-04

    有關清除SQL Server日志的兩種方法07-20

    SQL Server常用數據類型06-18

    如何更改SQL Server默認的1433端口05-19

    SQL中的單記錄函數08-12

    2016最新J2EE中SQL語句自動構造方法08-02

    SQL中的單記錄函數盤點09-09

    PL/SQL編程中的經驗小結09-21

    如何避免幼兒兒童在舞蹈學習、培訓中受傷的方法08-09

    主站蜘蛛池模板: 日本午夜精品一区二区三区电影| 久久精品一区二区影院 | 青青青青久久精品国产h| 香港aa三级久久三级老师2021国产三级精品三级在 | 久久久精品久久久久久 | 午夜成人精品福利网站在线观看 | 无码日韩精品一区二区免费| 国产成人综合精品一区| 国内少妇偷人精品视频免费| 亚洲精品97久久中文字幕无码| 成人国产精品秘 果冻传媒在线| 精品国产三级a在线观看| 亚洲精品专区| 精品亚洲一区二区三区在线播放| 精品少妇一区二区三区视频| 精品一区二区三区在线观看视频| 亚洲精品视频在线看| 精品亚洲视频在线观看| 国产精品成人99久久久久| 国产精品天天影视久久综合网| 亚洲处破女AV日韩精品| 完整观看高清秒播国内外精品资源| 国产精品成人观看视频| 久久99国产精品久久99| 97久久国产亚洲精品超碰热| 久久久久久国产精品免费无码 | 精品国产免费人成网站| 日韩精品一区二区三区四区| 99久久免费国产精品热| 久久久国产乱子伦精品作者| 亚洲码国产精品高潮在线| 四虎成人精品| 无码精品蜜桃一区二区三区WW| 精品露脸国产偷人在视频| 国产成人精品福利网站在线观看| 日本精品不卡视频| 精品视频第一页| 精品无人区麻豆乱码1区2区| 国产精品一级片| 久久精品国产久精国产| 午夜精品在线观看|