出現“效能監視器計數器要求”錯誤的解決辦法
今天在安裝SQL Server 2005時,出現“效能監視器計數器要求”錯誤,因為以前出現過這種錯誤,得到了解決。今天又又出現這種錯誤,但並不是很清楚當時的解決辦法,所以這次把解決方法記錄下來,供自己以後參考,也希望對大家有幫助。
錯誤原因
造成這種錯誤的原因在於Microsoft SQL Server 安裝程式中的安裝配置檢查器 (SCC)在安裝SQL Server前會驗證計數器登錄檔項的值。如果 SCC 無法驗證現有的登錄檔項,或 SCC 無法執行 lodctr.exe 系統程式,則 SCC 檢查會失敗,致使安裝受阻。
解決辦法(手動設定計數器登錄檔項的增量)
解決辦法一
1.在Windows Server 2003或者Windows Xp中,依次單擊“開始”,“執行”,然後在“開啟”中輸入“regedit”單擊“確定”開啟登錄檔,在Windows 2000中輸入“regedt32”開啟登錄檔。
2. 定位到登錄檔項:
[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsNTCurrentVersionPerflib]
"Last Counter"=dword:00000ed4 (5276)
"LastHelp"=dword:00000ed5 (5277)
3. 第2步中的“Last Counter”值 (5276) 必須與以下注冊表項中“Perflib09”的“Counter”項的最大值匹配,並且第2步中的“Last Help”值 (5277) 必須與以下注冊表項中“Perflib09”的“Help”項的最大值匹配。(注意:Perflib中有兩個子項004和009,004代表中文,009代表英文。)
[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionPerflib09]
“Last Counter”和“Last Help”值是由 Windows 動態分配的;這兩個值會因計算機的不同而不同。
4.如果完成第3步還無法安裝的話,可修改“Perflib”項中的“Last Counter”和“Last Help”值的值。右鍵單擊“Last Counter”或“Last Help”,單擊“修改”,再單擊“Base = "Decimal"”,在“值資料”中設定值,再單擊“確定”。如有必要,對另一個項重複以上過程,然後關閉登錄檔編輯器。
解決辦法二
1.執行cmd,然後執行
unlodctr w3svc
unlodctr msftpsvc
unlodctr asp
unlodctr inetinfo
以上是將四個計數器都刪除
2.以下重新安裝計數器
lodctr w3ctrs.ini
lodctr ftpctrs.ini
lodctr axperf.ini
lodctr infoctrs.ini
一般情況下第一種方法就可以解決問題,第一種方法中更改的值只需比當前的值大就可以,沒有限制。第二種方法是備用方法。
個人認為第二種辦法最簡單最有效。