FIX: 一個 AWE 系統會使用更多的記憶體為排序或雜湊比在 SQL Server 2000 中的非 AWE 系統

文章翻譯 文章翻譯
文章編號: 831999 - 檢視此文章適用的產品。
Bug #: 469995 (Shiloh_bugs)

全部展開 | 全部摺疊

在此頁中

徵狀

SQL Server 排序與雜湊作業期間使用的記憶體是從緩衝集區配置為偷來的緩衝區。偷來的緩衝區必須永遠保持虛擬位址空間中。 它們不能是未對應至 Microsoft Windows 2000 地址視窗化擴充功能 (AWE) 位置。 SQL Server 會使用一個節流閥限制可以用多少記憶體,用於排序和雜湊。SQL Server 會限制記憶體基於這些原因:
  • 使整個緩衝集區不會由遭竊緩衝區加以使用。
  • 因此,緩衝集區可以繼續做為資料快取。
在已啟用 AWE 的系統上, 個多少記憶體可用來當作工作區記憶體用於排序和雜湊計算有時是高比非 AWE 系統上。因為偷來的緩衝區必須永遠保持在位址空間,額外的 AWE 記憶體應該此計算的無關。本文中討論此修正程式更正問題,使工作區可用於排序和雜湊計算一致跨越這兩種組態。

因為 miscalculation 的排序與雜湊作業可能會嘗試從緩衝集區非可維持對應使用更多的記憶體。結果 BPool::Map,類似下列的錯誤寫入至 SQL Server 錯誤記錄檔後面接著 DBCC MEMORYSTATUS 命令的輸出為:


2003-06-23 04:17:14.86 spid153 BPool::Map: 找到不 remappable 地址。
2003-06-23 04:17:15.04 spid92 緩衝區散發: 遭竊 = 133972 免費 = 10785 程序 = 17346 Inram = 0 Dirty = 155429 保留 = 0 我 / O = 2、 Latched = 988,其他 = 513478
2003-06-23 04:17:15.06 spid92 緩衝區計數: 認可 = 832000 目標 = 雜湊 832000 = 669897 InternalReservation = 1514 ExternalReservation = 4255 最小可用 = 1024年
2003-06-23 04:17:15.06 spid92 程序快取: TotalProcs = 8505 TotalPages = 17346 InUsePages = 6439
2003-06-23 04:17:15.06 spid92 動態記憶體管理員: 遭竊 = 25253 OS 保留 = 1776 OS 認可 = 1735 OS 使用中的 = 1644年查詢計劃 = 17383 最佳化器 = 0 一般 = 7999 公用程式 = 243 連線 = 907
2003-06-23 04:17:15.06 spid92 全域記憶體物件: 資源 = 3259 鎖定 = 102 SQLCache = 773 複寫 = 2 LockBytes = 2 ServerGlobal = 3528 Xact = 110
2003-06-23 04:17:15.06 spid92 查詢記憶體管理員: 授與 = 6 等候 = 0 的最大值 = 140712 可用 = 10409


在前面所示輸出,您可以看到 SQL Server 將允許多個要求,總共 140712 緩衝區以同時執行的查詢。在先前範例中有六個查詢正在執行與排序或雜湊。這些六個的查詢已授與 130303 緩衝區的使用 (140712 10409 = 130303)。

解決方案

服務套件資訊

如果要解決這個問題,取得最新的 Service Pack,Microsoft SQL Server 2000。如需詳細資訊,請按一下下列的文件編號,檢視 「 Microsoft 知識庫 」 中的文件:
290211如何取得最新的 SQL Server 2000 Service Pack

Hotfix 資訊

此修正程式的英文版具有檔案屬性 (或更新) 中如下表所列。這些檔案的日期和時間為 Coordinated Universal Time (UTC)。 當您檢視檔案資訊時,會將它轉換為當地時間。若要到 UTC 與當地時間差異使用 [中日期] 和 [時間] 工具,在 [控制台] 中的 [時區] 索引標籤]。
   Date         Time   Version            Size    File name
   ------------------------------------------------------------------------------
   31-May-2003  18:45  2000.80.818.0      78,400  Console.exe      
   28-Oct-2003  04:21  2000.80.873.0     315,968  Custtask.dll     
   02-Oct-2003  20:59  2000.80.867.0      33,340  Dbmslpcn.dll     
   25-Apr-2003  02:12                    786,432  Distmdl.ldf
   25-Apr-2003  02:12                  2,359,296  Distmdl.mdf
   30-Jan-2003  01:55                        180  Drop_repl_hotfix.sql
   12-Sep-2003  03:26  2000.80.859.0   1,905,216  Dtspkg.dll       
   26-Aug-2003  20:16  2000.80.854.0     528,960  Dtspump.dll      
   23-Jun-2003  22:40  2000.80.837.0   1,557,052  Dtsui.dll        
   23-Jun-2003  22:40  2000.80.837.0     639,552  Dtswiz.dll       
   24-Apr-2003  02:51                    747,927  Instdist.sql
   03-May-2003  01:56                      1,581  Inst_repl_hotfix.sql
   08-Feb-2003  06:40  2000.80.765.0      90,692  Msgprox.dll      
   01-Apr-2003  02:07                      1,873  Odsole.sql
   05-Apr-2003  01:46  2000.80.800.0      62,024  Odsole70.dll     
   07-May-2003  20:41  2000.80.819.0      25,144  Opends60.dll     
   02-Apr-2003  21:48  2000.80.796.0      57,904  Osql.exe         
   02-Apr-2003  23:15  2000.80.797.0     279,104  Pfutil80.dll     
   04-Aug-2003  18:17                    550,780  Procsyst.sql
   12-Sep-2003  00:37                     12,305  Qfe469315.sql
   22-May-2003  22:57                     19,195  Qfe469571.sql
   06-Sep-2003  01:36                  1,090,932  Replmerg.sql
   06-Sep-2003  07:18  2000.80.858.0     221,768  Replprov.dll     
   06-Sep-2003  07:18  2000.80.858.0     307,784  Replrec.dll      
   06-Sep-2003  00:00                  1,087,150  Replsys.sql
   13-Aug-2003  16:28                    986,603  Repltran.sql
   22-Oct-2003  00:08  2000.80.871.0      57,916  Semnt.dll        
   29-Jul-2003  20:13  2000.80.819.0     492,096  Semobj.dll       
   31-May-2003  18:27  2000.80.818.0     172,032  Semobj.rll
   05-Aug-2003  21:06                    127,884  Sp3_serv_uni.sql
   01-Jun-2003  01:01  2000.80.818.0   4,215,360  Sqldmo.dll       
   07-Apr-2003  17:44                     25,172  Sqldumper.exe    
   19-Mar-2003  18:20  2000.80.789.0      28,672  Sqlevn70.rll
   27-Sep-2003  04:42  2000.80.865.0     180,792  Sqlmap70.dll     
   03-Sep-2003  02:56  2000.80.857.0     188,992  Sqlmmc.dll       
   02-Sep-2003  23:03  2000.80.857.0     479,232  Sqlmmc.rll
   22-Oct-2003  00:08  2000.80.871.0     401,984  Sqlqry.dll       
   08-Feb-2003  06:40  2000.80.765.0      57,920  Sqlrepss.dll     
   05-Nov-2003  20:52  2000.80.876.0   7,606,353  Sqlservr.exe     
   25-Jul-2003  21:44  2000.80.845.0     590,396  Sqlsort.dll      
   08-Feb-2003  06:40  2000.80.765.0      45,644  Sqlvdi.dll       
   02-Oct-2003  20:59  2000.80.867.0      33,340  Ssmslpcn.dll     
   01-Jun-2003  01:01  2000.80.818.0      82,492  Ssnetlib.dll     
   01-Jun-2003  01:01  2000.80.818.0      25,148  Ssnmpn70.dll     
   28-Oct-2003  04:21  2000.80.873.0     123,456  Stardds.dll      
   01-Jun-2003  01:01  2000.80.818.0     158,240  Svrnetcn.dll     
   31-May-2003  18:59  2000.80.818.0      76,416  Svrnetcn.exe     
   30-Apr-2003  23:52  2000.80.816.0      45,132  Ums.dll          
   02-Jul-2003  00:19  2000.80.834.0      98,816  Xpweb70.dll      
注意 由於檔案相依性、 最新 Hotfix 或包含這些檔案的功能的可能也包含其他檔案。

狀況說明

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

這個問題,首先已經在 Microsoft SQL Server 2000 服務套件 4 中獲得修正。

其他相關資訊

如果 DBCC DBREINDEX 陳述式時發生 BPool::Map 錯誤,或是執行 CREATE INDEX 陳述式請參閱下列文件 「 Microsoft 知識庫 」 中:

838459FIX: 您可能會收到 BPool::Map 警告,當您建立或重建索引使用 awe 啟用組態選項

Microsoft 知識庫 」 文件 838459 討論修正程式,可能會比較容易解釋,則為 True 錯誤的原因。

?考

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

屬性

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