當您執行與在 SQL Server 中啟用多重作用結果集的多個應用程式時,SQL Server 內部的死結監視器中的修正程式: 存取違規

文章翻譯 文章翻譯
文章編號: 2723979 - 檢視此文章適用的產品。
全部展開 | 全部摺疊

在此頁中

徵狀

案例 1:

假設您有連線至 Microsoft SQL Server 2008 R2、 SQL Server 2012年或 SQL Server 2014年的執行個體的多個用戶端應用程式。此外,在連接字串中啟用多重作用結果集 (MARS) 功能。當多個要求會從這些應用程式送出在此同時,管理資料時,可能會發生死結 (deadlock)。在此情況下,可能是 SQL Server 內部的死結監視器中發生存取違規。

案例 2

請考慮如下案例:
  • 您已套用 Microsoft SQL Server 2012 SP1 的累積更新套件 7,在您的電腦上。
  • 您必須連線到 SQL Server 2012年的執行個體的多個用戶端應用程式。
  • 應用程式有設定分散式交易協調器 (DTC) 或多重作用結果集 (MARS) 交易。
  • 多個要求會從這些應用程式傳送相同的時間,並管理資料時,可能就會發生死結 (deadlock)。
在這個案例中,可能是 SQL Server 內部的死結監視器中發生存取違規。

發生的原因

之所以發生這個問題,是因為交易 mutex 不會更新為新的工作區。死結監視器執行緒存取這個舊的工作區鎖定列舉期間,並釋出舊的工作區,或者它不適當清除,就會發生存取違規。

解決方案

累積更新資訊

SQL Server 的下列累積更新已先修正問題。

SQL Server 2014年累積更新 1

SQL Server 2012 sp1 的累積更新 9

SQL Server 2012 sp1 的累積更新 1

SQL Server 2008 R2 sp2 的累積更新 3

SQL Server 2012年累積更新 4

SQL Server 2008 R2 sp1 的累積更新 8

關於 SQL Server 的累積更新

摺疊此圖像展開此圖像
assets folding start collapsed
SQL Server 每個新的累積更新包含所有的 hotfix,所有安全性修正程式,都包含在先前的累積更新。請檢查出最新的累積更新 SQL Server:
摺疊此圖像展開此圖像
assets folding end collapsed

Hotfix 資訊

此 hotfix 更新工作區變更時使用新的工作區的交易 mutex。

您可以從 Microsoft 取得的支援的 hotfix。然而,其目的只為修正這篇文章所說明的問題。套用此 hotfix,僅提供給已遭遇此特定問題的系統。

如果可供下載 hotfix,沒有在此知識庫文件頂端的 「 下載 Hotfix 」 區段。如果沒有出現這一節,將要求提交到 Microsoft 客戶服務及支援 」 取得 hotfix。

附註 如果發生其他問題,或如果需要進行疑難排解,您可能必須建立個別的服務要求。收取支援費用會套用到其他支援問題,以及此特定 hotfix 無法解決的問題。如需 Microsoft 客戶服務及支援部門的電話號碼,或需建立個別的服務要求的完整清單,請造訪下列 Microsoft 網站:
http://support.microsoft.com/contactus/?ws=support
附註 「可下載的 Hotfix」表單會顯示 hotfix 可以使用的語言。如果看不到您的語言,是因為 hotfix 未提供該語言。

狀況說明

Microsoft 已經確認這是 「 適用於 」 一節中所列的 Microsoft 產品中的問題。

其他相關資訊

如需有關如何啟用多重作用結果集 (MARS) 」 功能的詳細資訊,請移至下列 MSDN 網站:
如何啟用 MARS

屬性

文章編號: 2723979 - 上次校閱: 2014年4月21日 - 版次: 9.0
這篇文章中的資訊適用於:
  • Microsoft SQL Server 2008 R2 Datacenter
  • Microsoft SQL Server 2008 R2 Developer
  • Microsoft SQL Server 2008 R2 Enterprise
  • Microsoft SQL Server 2008 R2 Standard
  • Microsoft SQL Server 2008 R2 Web
  • Microsoft SQL Server 2008 R2 Workgroup
  • Microsoft SQL Server 2012 Developer
  • Microsoft SQL Server 2012 Enterprise
  • Microsoft SQL Server 2012 Standard
  • Microsoft SQL Server 2012 Web
  • Microsoft SQL Server 2012 Service Pack 1?應用於:
    • Microsoft SQL Server 2012 Developer
    • Microsoft SQL Server 2012 Enterprise
    • Microsoft SQL Server 2012 Standard
  • Microsoft SQL Server 2014 Developer
  • Microsoft SQL Server 2014 Enterprise
  • Microsoft SQL Server 2014 Standard
關鍵字:?
kbtshoot kbqfe kbfix kbsurveynew kbexpertiseadvanced kbautohotfix kbmt KB2723979 KbMtzh
機器翻譯
請注意--重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,且可能由 Microsoft Community 利用 Community Translation Framework技術或人工進行事後編修。翻譯過程並無專業譯者參與。Microsoft 同時提供使用者人為翻譯、機器翻譯及社群編修後的機器翻譯三種版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,所有翻譯文章都可能不盡完美,內容都可能出現詞彙、語意或文法上的錯誤。就翻譯內容之不正確或錯誤,或客戶因使用翻譯內容所產生的任何損害,微軟不負擔任何責任。Microsoft將依合理的商業努力不斷地更新機器翻譯軟體和工具,以期能為使用者提供更好的服務。
按一下這裡查看此文章的英文版本:2723979
Microsoft及(或)其供應商不就任何在本伺服器上發表的文字資料及其相關圖表資訊的恰當性作任何承諾。所有文字資料及其相關圖表均以「現狀」供應,不負任何擔保責任。Microsoft及(或)其供應商謹此聲明,不負任何對與此資訊有關之擔保責任,包括關於適售性、適用於某一特定用途、權利或不侵權的明示或默示擔保責任。Microsoft及(或)其供應商無論如何不對因或與使用本伺服器上資訊或與資訊的實行有關而引起的契約、過失或其他侵權行為之訴訟中的特別的、間接的、衍生性的損害或任何因使用而喪失所導致的之損害、資料或利潤負任何責任。

提供意見

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com