時的檔案控制碼用於 FileStream 存取 SQL Server 2008 交易在交易可能隨機無法認可或 Windows XP 商用版 x64 版 Windows Server 2003 中

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

在此頁中

徵狀

在電腦上執行 Windows Server 2003,否則 Windows XP 商用版 x64 Edition 當您使用 OpenSqlFilestream API 或.NET SqlFilestream 類別來取得 FileStream 存取 Microsoft SQL Server 2008,交易到交易中的檔案控制代碼可能隨機失敗認可。這個問題時其中一個下列的錯誤會記錄在 SQL Server 錯誤記錄檔中:
  • 3910 (由另一個工作階段使用中的交易內容)
  • 3981 (交易作業無法執行,因為有暫止處理此交易的要求)
  • 3922 (無法編列於交易中,因為交易不存在)
這個問題的原因與 SQL Server 2008 中的 [FILESTREAM] 功能不相關。但是,您通常遇到這個問題當您在 SQL Server 2008 中使用 FILESTREAM 功能。

發生的原因

Server 服務中發生錯誤,就會發生這個問題。伺服器服務無法正確關閉該檔案的延遲處理。因此,SQL Server 2008,無法執行認可操作。

解決方案

Hotfix 資訊

Windows Server 2003

一個支援的 Hotfix 現在已可從 Microsoft取得。不過,它只修正本文中所述此問題。請只在發生此特定問題的系統上套用。此 Hotfix 可能會接受其他測試。因此,如果您不會嚴重影響這個問題,我們建議您等候下一個包含此 Hotfix 的軟體更新。

如果要立即解決這個問題,請聯絡 Microsoft 客戶支援服務 」,以取得該 Hotfix。如需 Microsoft 客戶支援服務電話號碼及支援成本的相關資訊的完整清單,請造訪下列 Microsoft 網站]:
http://support.microsoft.com/contactus/?ws=support
附註 在特殊情況下通常會因支援電話所產生的費用可能就不收取如果 Microsoft 支援人員認為某特定更新程式可以解決您的問題。平常的支援成本將會套用到其他支援問題是所做不限定特定有問題的更新程式。
必要條件
若要將這個 Hotfix 您必須執行 Windows Server 2003 Service Pack 1]、 [Windows Server 2003 Service Pack 2]、 [Windows XP 商用版 x64 版] 或 [Windows XP 商用版 x64 Edition Service Pack 2 在電腦上。
重新啟動需求
您必須套用此 Hotfix 之後重新啟動電腦。
Hotfix 取代資訊
此 Hotfix 不會取代先前發行的 Hotfix。
檔案資訊
此 Hotfix 的英文版在檔案屬性 (或更新版本的檔案屬性) 如下列表格中所列。這些檔案的日期和時間為 Coordinated Universal Time (UTC)。當您檢視檔案資訊時,會將它轉換為當地時間。若要到 UTC 與當地時間差異使用在 [日期及時間 中項目控制台中的 [時區] 索引標籤]。

Windows Server 2003 與 Service Pack 1、 x x86 版本
摺疊此表格展開此表格
檔案名稱檔案版本檔案大小日期時間平台
Srv.sys5.2.3790.3177361,4722008 年七月 18 日10: 15x86

Windows Server 2003 與 Service Pack 1 ,x64-基礎版本
摺疊此表格展開此表格
檔案名稱檔案版本檔案大小日期時間平台
Srv.sys5.2.3790.3177674,8162008 年七月 21 日07: 32x64
Windows Server 2003 與服務封包 1 Itanium 架構版本
摺疊此表格展開此表格
檔案名稱檔案版本檔案大小日期時間平台
Srv.sys5.2.3790.31771,110,5282008 年七月 21 日07: 32IA 64

Windows Server 2003 與 Service Pack 2、 x x86 版本
摺疊此表格展開此表格
檔案名稱檔案版本檔案大小日期時間平台
Srv.sys5.2.3790.4337358,4002008 年七月 18 日12: 04x86

Windows Server 2003 與 Service Pack 2、 x x64 版本
摺疊此表格展開此表格
檔案名稱檔案版本檔案大小日期時間平台
Srv.sys5.2.3790.4337648,1922008 年七月 21 日14: 57x64

「 服務套件 2 Itanium 架構版本的 Windows Server 2003
摺疊此表格展開此表格
檔案名稱檔案版本檔案大小日期時間平台
Srv.sys5.2.3790.43371,111,5522008 年七月 21 日14: 54IA 64

Windows XP x64 版

一個支援的 Hotfix 現在已可從 Microsoft取得。不過,它只修正本文中所述此問題。請只在發生此特定問題的系統上套用。此 Hotfix 可能會接受其他測試。因此,如果您不會嚴重影響這個問題,我們建議您等候下一個包含此 Hotfix 的軟體更新。

如果要立即解決這個問題,請聯絡 Microsoft 客戶支援服務 」,以取得該 Hotfix。如需 Microsoft 客戶支援服務電話號碼及支援成本的相關資訊的完整清單,請造訪下列 Microsoft 網站]:
http://support.microsoft.com/contactus/?ws=support
附註 在特殊情況下通常會因支援電話所產生的費用可能就不收取如果 Microsoft 支援人員認為某特定更新程式可以解決您的問題。平常的支援成本將會套用到其他支援問題是所做不限定特定有問題的更新程式。
必要條件
若要將這個 Hotfix 您必須執行 Windows XP 商用版 x64 版或 Windows XP 商用版 x64 Edition Service Pack 2 在電腦上。
重新啟動需求
您必須套用此 Hotfix 之後重新啟動電腦。
Hotfix 取代資訊
此 Hotfix 不會取代先前發行的 Hotfix。
檔案資訊
此 Hotfix 的英文版在檔案屬性 (或更新版本的檔案屬性) 如下列表格中所列。這些檔案的日期和時間為 Coordinated Universal Time (UTC)。當您檢視檔案資訊時,會將它轉換為當地時間。若要到 UTC 與當地時間差異使用在 [日期及時間 中項目控制台中的 [時區] 索引標籤]。

Windows XP x64 版
摺疊此表格展開此表格
檔案名稱檔案版本檔案大小日期時間平台
Srv.sys5.2.3790.3177674,8162008 年七月 21 日07: 32x64

Windows XP x64 版與 Service Pack 2
摺疊此表格展開此表格
檔案名稱檔案版本檔案大小日期時間平台
Srv.sys5.2.3790.4337648,1922008 年七月 21 日14: 57x64

其他可行方案

重要這個區段、 方法或任務包含告訴您如何修改登錄的步驟。然而,如果您不當修改登錄,可能會發生嚴重的問題。因此,執行這些步驟時請務必小心。為加強保護,修改登錄之前,請務必將它備份起來。以後您就可以在發生問題時還原登錄。如需有關如何備份和還原登錄的詳細資訊,請按一下下面的文件編號,檢視「Microsoft 知識庫」中的文件:
322756如何備份和還原在 Windows 登錄
警告您操作上共用的檔案系統中時,這項因應措施會造成效能問題。


若要解決這個問題,將 Cachedopenlimit 登錄項目值設為 0,] 然後重新啟動伺服器服務。要這麼做,請您執行下列步驟:
  1. 在 [登錄編輯程式] 中,找出下列登錄子機碼:
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Lanmanserver\Parameters
  2. 在 [參數 登錄子機碼之下按一下 [編輯]、 按一下 [新增]、 按一下 [DWORD 值、 鍵入 Cachedopenlimit,並按下 ENTER。
  3. 將十進位值 Cachedopenlimit 登錄項目設定為 0
  4. 重新啟動伺服器服務。
附註預設情況下,Cachedopenlimit 登錄項目的值是 5,即使未設定它。

警告當您將 [值] 設定為 [0 時,所有共用檔案的檔案控制代碼所未快取的系統。當您正在存取共用的檔案系統中,這可能會造成效能問題。

狀況說明

Microsoft 已確認<適用於>一節所列之 Microsoft 產品確實有此問題。

其他相關資訊

也會發生這個問題在 Windows Server 2008 和 Windows XP 中 x x86 版本。如更多有關這個問題,在 Windows Server 2008 中,按一下 [下面的文件編號,檢視 「 Microsoft 知識庫 」 中的發行項]:
953263使用 Transact-SQL 陳述式在 SQL Server 2008 中的一個 FILESTREAM 資料行上作業時,陳述式可能隨機失敗認可,並在 Windows Server 2008 中造成資料損毀
如更多有關這個問題在 Windows XP 中 x x86 版本的資訊,按一下下面的文件編號,檢視 「 Microsoft 知識庫 」 中的發行項:
955567當您嘗試將資料附加到 FILESTREAM varbinary (最大) 中的一個資料行 SQL Server 2008 在 Windows XP 電腦上時,就可能發生資料損毀
如需有關軟體更新術語的詳細資訊,按一下下面的文件編號,檢視 「 Microsoft 知識庫 」 中的發行項:-
824684用來描述 Microsoft 軟體更新標準術語的說明

何時使用 FILESTREAM 儲存

在 SQL Server 2008 中的二進位大型物件 (BLOB) 資料可以是將資料儲存在資料庫資料表之 VARBINARY(MAX) 型別的資料。BLOB 資料也可以將資料存放在檔案系統之 VARBINARY(MAX) FILESTREAM 型別的資料。資料大小和資料使用方式,決定是否應該使用資料庫儲存體或 FILESTREAM 儲存。您應該考慮使用 FILESTREAM 儲存,當下列情況成立時:
  • 上平均您儲存的 BLOB 資料大於 1 百萬位元組 (MB)。
  • 快速讀取權限是很重要的。
  • 您正在開發的應用程式邏輯使用中介層應用程式。
如果 BLOB 資料小於 1 MB,您應該考慮使用資料庫儲存體。資料庫儲存經常提供更好的資料流的效能。

如需詳細資訊請造訪下列 Microsoft 開發 o 人 h 員 ? 工 u 具 ? 網路 (MSDN) 網站]:
http://msdn.microsoft.com/en-us/library/bb933993.aspx

屬性

文章編號: 955280 - 上次校閱: 2009年1月13日 - 版次: 2.0
這篇文章中的資訊適用於:
  • Microsoft Windows Server 2003, Web Edition
  • Microsoft Windows Server 2003, Datacenter Edition (32-bit x86)
  • Microsoft Windows Server 2003, Datacenter Edition for Itanium-Based Systems
  • Microsoft Windows Server 2003, Datacenter x64 Edition
  • Microsoft Windows Server 2003, Enterprise x64 Edition
  • Microsoft Windows Server 2003, Enterprise Edition (32-bit x86)
  • Microsoft Windows Server 2003, Enterprise Edition for Itanium-based Systems
  • Microsoft Windows Server 2003, Standard x64 Edition
  • Microsoft Windows Server 2003, Standard Edition (32-bit x86)
  • Microsoft Windows XP Professional x64 Edition
關鍵字:?
kbmt kbexpertiseadvanced kbfix kbautohotfix kbsurveynew kbqfe kbhotfixserver KB955280 KbMtzh
機器翻譯
重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,而非使用人工翻譯而成。Microsoft 同時提供使用者人工翻譯及機器翻譯兩個版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,機器翻譯的文章可能不盡完美。這些文章中也可能出現拼字、語意或文法上的錯誤,就像外國人在使用本國語言時可能發生的錯誤。Microsoft 不為內容的翻譯錯誤或客戶對該內容的使用所產生的任何錯誤或損害負責。Microsoft也同時將不斷地就機器翻譯軟體進行更新。
按一下這裡查看此文章的英文版本:955280
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