關於SQL Server 各種安裝失敗均失敗,報錯“等待數據庫引擎恢復句柄失敗”的經驗分享


  最近安裝SQL 2019遇到這個問題,試過網上幾乎所有辦法,都安裝不上。最后在微軟社區提問解決了,由於這個問題不常見,並且網上幾乎沒有正確的解決方案,因此將我的解決過程及經驗記錄分享一下,也為后來者提供參考。

  1、如果是權限問題,現有的網上很多修改權限的方案是可以解決安裝問題的,在此不做介紹。

  2、按網上修改了權限、或其他一系列正確操作后,還是安裝不上的。這種情況的用戶,有一個共同點,電腦是近幾年內新購的(現在是2022.03)

  

  以下只是第2種情況的分析和解決

  首先,導致這個問題原因是硬盤扇區大小與SQL Server不兼容。

  目前SQL Server只支持512B和4KB大小的扇區,而現在一些新的硬件設備,扇區大小有時會大於4Kb,與SQL Server不兼容,所以會一直安裝不上。

  可以查看自己硬盤分區的扇區大小是否與SQL Server兼容,用管理員身份運行PowerShell,輸入fsutil fsinfo sectorinfo D:(如想查詢其他分區,修改對應盤符即可)

  在返回的信息中,查看 PhysicalBytesPerSectorForAtomicity的值,如果值不是512或4096,則代表SQL Server無法安裝到此硬盤上。

  這個是我的電腦扇區大小

  

  解決方案:

  方案1:格式化硬盤,重新分配扇區大小,讓扇區大小與SQL Server匹配。

    此方法可以將整個硬盤格式化掉,當然這樣做的結果就是丟失所有文件,並且還需要重裝系統。也可以格式化一個硬盤分區,將SQL Server安裝到對應的分區就行。

  方案2:強制模擬扇區大小為4Kb

    此方法不會影響硬盤分區,但可能會造成一點性能方面的損失。

    用管理員身份運行PowerShell,

    輸入:New-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\stornvme\Parameters\Device" -Name "ForcedPhysicalSectorSizeInBytes" -PropertyType MultiString -Force -Value "* 4095"

    驗證:Get-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\stornvme\Parameters\Device" -Name "ForcedPhysicalSectorSizeInBytes"(查看強制模擬結果)

    然后重啟電腦,安裝SQL Server。

     注意:通過強制模擬扇區大小為4Kb后,PhysicalBytesPerSectorForAtomicity值是不會改變的,比如我的電腦,在強制模擬后,PhysicalBytesPerSectorForAtomicity值還是32768

 

連續2周,各種安裝方法,結果驚奇的一致,永遠的“數據庫引擎服務”-失敗,永遠的“等待數據庫引擎恢復句柄失敗”:

 

 

 強制模擬后,安裝結果,終於成功了:

 

 

此方案不是我的原創,是我在微軟社區提問后,由  提供的解決方案,在此表示感謝。

微軟社區問答地址:win11環境下,SQL SERVER在M.2、PCLE的硬盤接口下無法安裝 - Microsoft Community

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM