FIX: 可能會遇到堆積損毀,SQL Server 2000 可能會關閉與嚴重的存取違規當您嘗試瀏覽在 SQL Server 2000 企業管理員在 Windows Server 2003 x 64 架構的電腦上的檔案

文章翻譯 文章翻譯
文章編號: 916950 - 檢視此文章適用的產品。
錯誤: # 40000113 (SQL Hotfix)
Microsoft 為一個可下載檔案散佈 Microsoft SQL Server 2000 的修正程式。由於此修正程式是累積,每個新版本包含所有 Hotfix,隨附先前的 SQL Server 2000 所有安全性修正程式都修正發行。
全部展開 | 全部摺疊

在此頁中

結論

本文將告訴您下列關於此 Hotfix 版本:
  • 此 Hotfix 套件所修正的問題
  • 安裝 Hotfix 套件的先決條件
  • 是否之後,您必須重新啟動電腦安裝 Hotfix 套件的相關資訊
  • 是否 Hotfix 套件就會取代任何其他 Hotfix 套件的相關資訊
  • 您必須在是否做任何登錄變更的相關資訊
  • 包含在 Hotfix 套件中的檔案

徵狀

考慮下列案例。x 版為基礎的 64 電腦的 Microsoft Windows Server 2003 上正在執行 Microsoft SQL Server 2000 企業管理員。您將瀏覽檔案,但按一下省略符號按鈕 (...) 在 SQL Server 2000 企業管理員] 的任何 檔案] 對話方塊。在這種情況下,您可能會遇到堆積損毀和 SQL Server 可能會關閉與嚴重的存取違規。

其他執行緒或物件 (如 Microsoft 元件物件模型 (COM) 物件可能會載入至 SQL Server 藉由使用 sp_oacreate 預存程序。這種情形時 OLEDB 連結伺服器提供者執行同處理序,SQL Mail 或 SQLXML 也會受到影響,可能會導致 SQL Server 處理序關閉。此外,您也可能會遇到這個問題叢集執行個體 (Instance) 上。

備忘稿
  • 這個問題只會影響 x 64 版本的 Windows 64 (WOW64) 子系統上 Windows Server 2003 的 [Windows 中執行 SQL Server 2000 32 位元版本。
  • 這個堆積損毀問題並不會影響任何一種 SQL Server 2000 64 位元版本的例如 IA-64 執行這些版本使用 Intel Itanium 2 架構的作業系統。
  • 這個問題並不會影響在 WOW64 子系統在 IA-64 的作業系統上的 32 位元版本的 SQL Server。
  • 這個問題並不會影響任何版本的 Microsoft SQL Server 2005。
因為 xp_availablemedia 系統延伸預存程序可能會發生這個問題。當按一下省略符號按鈕 (...) 圖形化使用者介面 (GUI) 中的時,xp_availablemedia 系統延伸預存程序可能會被呼叫來執行檔案瀏覽操作。在叢集執行個體中企業管理員呼叫該 sp_MSSharedFixedDisk 預存程序,並 sp_MSSharedFixedDisk 預存程序呼叫 xp_availablemedia 系統延伸預存程序。

您可能不會注意到堆積損毀直到其他執行緒會使用預設堆積或堆積記憶體釋放為止。Sqlservr.exe 處理序內執行任何模組可以共用預設堆積在處理程序中。因此,Xpstar.dll 和 xp_availablemedia 系統延伸預存程序會編譯其他模組,可能會影響這種堆積損毀。

如需清單所有公開發行的 SQL Server 2000 Post-Service 套件 Hotfix 請參閱下列的 「 Microsoft 知識庫 」 中的文件:
894905可用的 SQL Server 2000 SP4 的 Hotfix 的累積清單

解決方案

安裝程式並不會安裝此 Hotfix 正確開 x 64 為主的系統。當下列情況成立時,就會發生這個安裝問題:
  • 系統會使用進階微裝置 (AMD) AMD64 處理器架構或 Intel 延伸記憶體 64 技術 (EM64T) 處理器架構。

    附註 使用 Intel Itanium 處理器架構的系統不會發生這個問題。
  • 系統正在執行 Microsoft Windows 伺服器作業系統的一個 64 位元版本。
  • 系統正在執行 SQL Server 2000 一個 32 位元的版本。
我們已修正在稍後的組建中的 SQL Server 2000 版本 8.00.2244 以開始這個安裝問題。x x64 系統上執行 SQL Server 2000 的客戶要求此 Hotfix 時, 我們會提供的組建,包括此 Hotfix 及,可以安裝正確地在 x x64 為主的系統上。我們提供的組建會版本 8.00.2244 或更新版本。

Hotfix 資訊

Microsoft 提供支援的 Hotfix。不過,此 Hotfix 旨在修正本文中所述隨問題。只會發生此特定問題的系統套用此 Hotfix。

如果此 Hotfix 可供下載,您可在本知識庫文件的頂端找到「 可用的 Hotfix 下載 」區段。如果沒有出現此區段,將要求提交到 Microsoft 客戶服務及支援],以取得該 Hotfix。

附註如果發生其他問題,或如果需要任何疑難排解,您可能必須建立個別的服務要求。和此 Hotfix 無關的額外支援問題適用一般的支援費用。如需 Microsoft 客戶服務支援部門電話號碼的完整清單或要建立個別的服務要求,請造訪下列 Microsoft 網站:
http://support.microsoft.com/contactus/?ws=support
附註「 下載 Hotfix 」 表單會顯示此 Hotfix 會出現,以供使用的語言。如果您沒有看到您的語言,是因為此 Hotfix 是不適用您的語言。

必要條件

您必須有 Microsoft SQL Server 2000 服務套件 4 (SP4) 來套用這個 Hotfix 安裝。

如需有關如何取得 SQL Server 服務套件 4 的詳細資訊,按一下 [下列面的文件編號,檢視 「 Microsoft 知識庫 」 中的發行項]:
290211如何取得最新的 SQL Server 2000 Service Pack

重新啟動資訊

安裝此 Hotfix 之後,會自動重新啟動 SQL 伺服器服務。

登錄資訊

您沒有變更登錄。

Hotfix 檔案資訊

此 Hotfix 包含只需修正本文所列問題的那些檔案。此 Hotfix 並未包含必須將產品完整更新至最新版組建的所有檔案。

此 Hotfix 的英文版在檔案屬性 (或更新版本的檔案屬性) 如下列表格中所列。 這些檔案的日期和時間為 Coordinated Universal Time (UTC)。當您檢視檔案資訊時,會將它轉換為當地時間。若要到 UTC 與當地時間差異使用在 [日期及時間中項目控制台中的 [時區] 索引標籤]。
SQL Server 2000 32年位元版本
摺疊此表格展開此表格
檔案名稱檔案版本檔案大小日期時間平台
Dtsui.dll2000.80.2191.01,593,3442006 年三月 27 日21: 10x86
Impprov.dll2000.80.2191.0102,4002006 年三月 27 日21: 10x86
Msgprox.dll2000.80.2191.094,2082006 年三月 27 日21: 10x86
Msrpjt40.dll4.10.9424.0188,4732006 年一月 24 日08: 13x86
Mssdi98.dll8.11.50523.0239,1042005 年六月 06 日22: 46x86
Ntwdblib.dll2000.80.2191.0290,8162006 年三月 27 日21: 10x86
Odsole70.dll2000.80.2191.069,6322006 年三月 27 日21: 10x86
Osql.exe2000.80.2191.057,3442006 年三月 27 日19: 25x86
Pfclnt80.dll2000.80.2191.0430,0802006 年三月 27 日21: 10x86
Replmerg.exe2000.80.2191.0163,8402006 年三月 27 日19: 34x86
Replprov.dll2000.80.2191.0237,5682006 年三月 27 日21: 10x86
Replrec.dll2000.80.2191.0315,3922006 年三月 27 日21: 10x86
Replsub.dll2000.80.2191.0270,3362006 年三月 27 日21: 10x86
Semexec.dll2000.80.2191.0856,0642006 年三月 27 日21: 10x86
Sqlagent.exe2000.80.2191.0323,5842006 年三月 27 日19: 09x86
Sqldiag.exe2000.80.2191.0118,7842006 年三月 27 日20: 15x86
Sqldmo.dll2000.80.2191.04,362,2402006 年三月 27 日21: 10x86
Sqlfth75.dll2000.80.2191.0102,4002006 年三月 27 日19: 23x86
Sqlservr.exe2000.80.2191.09,162,7522006 年三月 27 日21: 10x86
Sqlsort.dll2000.80.2191.0589,8242006 年三月 27 日21: 11x86
Stardds.dll2000.80.2191.0176,1282006 年三月 27 日21: 11x86
Svrnetcn.dll2000.80.2191.0110,5922006 年三月 27 日21: 11x86
Ums.dll2000.80.2191.035,3282006 年三月 27 日21: 11x86
Xpstar.dll2000.80.2191.0311,2962006 年三月 27 日21: 11x86
SQL Server 2000 Itanium 架構版本
摺疊此表格展開此表格
檔案名稱檔案版本檔案大小日期時間平台
Impprov.dll2000.80.2191.0244,7362006 年三月 27 日21: 14IA 64
Msgprox.dll2000.80.2191.0188,4162006 年三月 27 日21: 16IA 64
Mssdi98.dll8.11.50523.0758,7842005 年六月 06 日22: 46IA 64
Odsole70.dll2000.80.2191.0150,5282006 年三月 27 日21: 13IA 64
Osql.exe2000.80.2191.0149,5042006 年三月 27 日21: 13IA 64
Pfclnt80.dll2000.80.2191.01,187,8402006 年三月 27 日21: 35IA 64
Replmerg.exe2000.80.2191.0375,2962006 年三月 27 日21: 17IA 64
Replprov.dll2000.80.2191.0538,6242006 年三月 27 日21: 20IA 64
Replrec.dll2000.80.2191.0775,1682006 年三月 27 日21: 19IA 64
Replsub.dll2000.80.2191.0641,0242006 年三月 27 日21: 21IA 64
Sqlagent.exe2000.80.2191.01,061,3762006 年三月 27 日21: 38IA 64
Sqldiag.exe2000.80.2191.0334,3362006 年三月 27 日21: 37IA 64
Sqldmo.dll2000.80.2191.013,860,3522006 年三月 27 日21: 42IA 64
Sqlfth75.dll2000.80.2191.0246,7842006 年三月 27 日21: 16IA 64
Sqlservr.exe2000.80.2191.024,973,3122006 年三月 28 日02: 22IA 64
Sqlsort.dll2000.80.2191.0617,4722006 年三月 27 日19: 09IA 64
Svrnetcn.dll2000.80.2191.0427,5202006 年三月 27 日21: 32IA 64
Xpstar.dll2000.80.2191.0873,4722006 年三月 27 日21: 41IA 64

其他可行方案

如果要解決這個問題,您可能會暫時防止 xp_availablemedia 系統延伸預存程序使用。如果要執行這項操作,使用
use master
	go
	if exists (select * from master.dbo.sysobjects where name = N'xp_availablemedia' 
			and type = N'X')
	exec sp_dropextendedproc N'xp_availablemedia'
go
如果想將 xp_availablemedia 系統延伸預存程序,在您安裝 Hotfix 之後重新使用在下列程式碼範例
use master
	go
	sp_addextendedproc N'xp_availablemedia',N'xpstar.dll'
	go
如果您移除程序、 sp_MSSharedFixedDisk 預存程序的任何呼叫失敗,也未出現在 SQL Server 2000 企業管理員] 中的任何 檔案] 對話方塊。 下列程式碼範例。在 「 DTS 設計師 」 中,並沒有收到錯誤訊息。不過,並不會顯示 [檔案] 對話方塊。移除 xp_availablemedia 系統延伸預存程序之後您必須以手動方式輸入檔案名稱或您想要的資料夾位置。而且,移除 xp_availablemedia 系統延伸預存程序,並按一下省略符號按鈕 (...) 在 SQL Server 2000 企業管理員之後,您收到下列錯誤訊息中的一個 Microsoft SQL-DMO (ODBC SQLState: 42000) 對話方塊:
錯誤 2812年: 找不到預存程序 'xp_availablemedia'。
附註任一下列條件為真時,可能是自動 re-added 到 SQL Server xp_availablemedia 系統延伸預存程序:
  • 還原 master 資料庫。
  • 藉由使用 [Rebuildm.exe 重建 master 資料庫公用程式。
  • 您安裝 Service Pack 或 Hotfix。

狀況說明

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

其他相關資訊

通常,ntdll! RtlpCoalesceFreeBlocksntdll! RtlFreeHeap 函式是預設堆積中發生堆積損毀時,會在執行緒堆疊的頂端受害者的功能。不過,這些函式不是只有這種堆積損毀,可能會影響的函式。因此,任何犧牲者存取違規執行緒堆疊可能會有所不同。 此外,您無法藉由檢查單獨,犧牲者執行緒堆疊來判斷造成堆積損毀的原因和堆積損毀的根本原因可能因其他未列在本文的因素。

比方說 xp_availablemedia 系統延伸預存程序的呼叫可能如下所示:
  • 在 [SQL Server 企業管理員] 中,展開 [SQL Server、 展開 [管理]、 您用滑鼠右鍵按一下 [備份,] 然後按一下 [新增備份裝置
  • 備份裝置內容-新增裝置] 對話方塊按一下省略符號按鈕 (...) 找不到裝置的 檔案名稱 旁邊。
延伸預存程序的 xp_availablemedia 系統也可能藉由使用 SQL DMO 呼叫以程式設計的方式。您可呼叫 EnumAvailableMedia 方法一起使用 SQLDMOMedia_All、 SQLDMOMedia_Tape,或 SQLDMOMedia_SharedFixedDisk MediaType 參數值的 SQL Server DMO 物件。不論如何,您使用的程序,結果可能永遠都是一樣的。

如需詳細資訊,請按一下下列的文件編號,檢視 「 Microsoft 知識庫 」 中的文件:
824684用來描述 Microsoft 軟體更新標準術語的說明

屬性

文章編號: 916950 - 上次校閱: 2007年11月2日 - 版次: 1.9
這篇文章中的資訊適用於:
  • Microsoft SQL Server 2000 Developer Edition
  • Microsoft SQL Server 2000 Enterprise Edition
  • Microsoft SQL Server 2000 Personal Edition
  • Microsoft SQL Server 2000 Standard Edition?應用於:
    • Microsoft Windows Server 2003, Standard x64 Edition
    • Microsoft Windows Server 2003, Enterprise x64 Edition
關鍵字:?
kbmt kbautohotfix kbbug kbhotfixserver kbqfe KB916950 KbMtzh
機器翻譯
重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,而非使用人工翻譯而成。Microsoft 同時提供使用者人工翻譯及機器翻譯兩個版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,機器翻譯的文章可能不盡完美。這些文章中也可能出現拼字、語意或文法上的錯誤,就像外國人在使用本國語言時可能發生的錯誤。Microsoft 不為內容的翻譯錯誤或客戶對該內容的使用所產生的任何錯誤或損害負責。Microsoft也同時將不斷地就機器翻譯軟體進行更新。
按一下這裡查看此文章的英文版本:916950
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