我无法在我的 Windows 11 机器上安装 SQL Server 2019,因为它无法启动数据库引擎服务,我不明白为什么。这是我的个人电脑,我对它有完全的访问权限和所有权限。
我知道这个错误在整个互联网上都有发布,我已经在 StackOverflow 上看到了一些,但是没有任何解决方案可以帮助我解决这个问题。
我花了好几个小时在线尝试多个教程,但我觉得我已经走到了死胡同。在我绝望中,我什至尝试重新安装 Windows 无济于事。
我希望我的解释足够清楚,即使我快睡着了,因为我熬夜试图解决这个问题。非常感谢您的帮助,我可以提供更多关于我尝试过或未尝试过的日志或信息。
编辑:正如评论中所建议的,我已经使用命令提示符检查了扇区大小,这是输出,它确实不是预期值:
C:\WINDOWS\system32>fsutil fsinfo sectorinfo C:
LogicalBytesPerSector : 512
PhysicalBytesPerSectorForAtomicity : 32768
PhysicalBytesPerSectorForPerformance : 32768
FileSystemEffectivePhysicalBytesPerSectorForAtomicity : 4096
Device Alignment : Aligned (0x000)
Partition alignment on device : Aligned (0x000)
No Seek Penalty
Trim Supported
Not DAX capable
Not Thinly-Provisioned
总结日志:
Overall summary:
Final result: Failed: see details below
Exit code (Decimal): -2061893606
Start time: 2022-02-02 02:21:47
End time: 2022-02-02 02:25:37
Requested action: Install
Setup completed with required actions for features.
Troubleshooting information for those features:
Next step for SQLEngine: Use the following information to resolve the error, uninstall this feature, and then run the setup process again.
Machine Properties:
Machine name: CISMAILPC
Machine processor count: 16
OS version: Microsoft Windows 11 Pro (10.0.22000)
OS service pack:
OS region: United States
OS language: English (United States)
OS architecture: x64
Process architecture: 64 Bit
OS clustered: No
Product features discovered:
Product Instance Instance ID Feature Language Edition Version Clustered Configured
Package properties:
Description: Microsoft SQL Server 2019
ProductName: SQL Server 2019
Type: RTM
Version: 15
SPLevel: 0
Installation location: C:\SQL2019\Developer_ENU\x64\setup\
Installation edition: Developer
Product Update Status:
None discovered.
User Input Settings:
ACTION: Install
ADDCURRENTUSERASSQLADMIN: false
AGTSVCACCOUNT: NT AUTHORITY\NETWORK SERVICE
AGTSVCPASSWORD: *****
AGTSVCSTARTUPTYPE: Manual
ASBACKUPDIR: Backup
ASCOLLATION: Latin1_General_CI_AS
ASCONFIGDIR: Config
ASDATADIR: Data
ASLOGDIR: Log
ASPROVIDERMSOLAP: 1
ASSERVERMODE: TABULAR
ASSVCACCOUNT: <empty>
ASSVCPASSWORD: <empty>
ASSVCSTARTUPTYPE: Automatic
ASSYSADMINACCOUNTS: <empty>
ASTELSVCACCT: <empty>
ASTELSVCPASSWORD: <empty>
ASTELSVCSTARTUPTYPE: 0
ASTEMPDIR: Temp
BROWSERSVCSTARTUPTYPE: Disabled
CLTCTLRNAME: <empty>
CLTRESULTDIR: <empty>
CLTSTARTUPTYPE: 0
CLTSVCACCOUNT: <empty>
CLTSVCPASSWORD: <empty>
CLTWORKINGDIR: <empty>
COMMFABRICENCRYPTION: 0
COMMFABRICNETWORKLEVEL: 0
COMMFABRICPORT: 0
CONFIGURATIONFILE: C:\Program Files\Microsoft SQL Server\150\Setup Bootstrap\Log\20220202_021140\ConfigurationFile.ini
CTLRSTARTUPTYPE: 0
CTLRSVCACCOUNT: <empty>
CTLRSVCPASSWORD: <empty>
CTLRUSERS: <empty>
ENABLERANU: false
ENU: true
EXTSVCACCOUNT: <empty>
EXTSVCPASSWORD: <empty>
FEATURES: SQLENGINE, SNAC_SDK
FILESTREAMLEVEL: 0
FILESTREAMSHARENAME: <empty>
FTSVCACCOUNT: <empty>
FTSVCPASSWORD: <empty>
HELP: false
IACCEPTPYTHONLICENSETERMS: false
IACCEPTROPENLICENSETERMS: false
IACKNOWLEDGEENTCALLIMITS: false
INDICATEPROGRESS: false
INSTALLSHAREDDIR: C:\Program Files\Microsoft SQL Server\
INSTALLSHAREDWOWDIR: C:\Program Files (x86)\Microsoft SQL Server\
INSTALLSQLDATADIR: <empty>
INSTANCEDIR: C:\Program Files\Microsoft SQL Server\
INSTANCEID: MSSQLSERVER
INSTANCENAME: MSSQLSERVER
ISMASTERSVCACCOUNT: NT AUTHORITY\Network Service
ISMASTERSVCPASSWORD: <empty>
ISMASTERSVCPORT: 8391
ISMASTERSVCSSLCERTCN: <empty>
ISMASTERSVCSTARTUPTYPE: Automatic
ISMASTERSVCTHUMBPRINT: <empty>
ISSVCACCOUNT: NT AUTHORITY\Network Service
ISSVCPASSWORD: <empty>
ISSVCSTARTUPTYPE: Automatic
ISTELSVCACCT: <empty>
ISTELSVCPASSWORD: <empty>
ISTELSVCSTARTUPTYPE: 0
ISWORKERSVCACCOUNT: NT AUTHORITY\Network Service
ISWORKERSVCCERT: <empty>
ISWORKERSVCMASTER: <empty>
ISWORKERSVCPASSWORD: <empty>
ISWORKERSVCSTARTUPTYPE: Automatic
MATRIXCMBRICKCOMMPORT: 0
MATRIXCMSERVERNAME: <empty>
MATRIXNAME: <empty>
MRCACHEDIRECTORY:
NPENABLED: 0
PBDMSSVCACCOUNT: <empty>
PBDMSSVCPASSWORD: <empty>
PBDMSSVCSTARTUPTYPE: 0
PBENGSVCACCOUNT: <empty>
PBENGSVCPASSWORD: <empty>
PBENGSVCSTARTUPTYPE: 0
PBPORTRANGE: <empty>
PBSCALEOUT: false
PID: *****
QUIET: false
QUIETSIMPLE: false
ROLE:
RSINSTALLMODE: DefaultNativeMode
RSSVCACCOUNT: <empty>
RSSVCPASSWORD: <empty>
RSSVCSTARTUPTYPE: Automatic
SAPWD: *****
SECURITYMODE: SQL
SQLBACKUPDIR: <empty>
SQLCOLLATION: SQL_Latin1_General_CP1_CI_AS
SQLJAVADIR: <empty>
SQLMAXDOP: 8
SQLMAXMEMORY: 2147483647
SQLMINMEMORY: 0
SQLSVCACCOUNT: NT AUTHORITY\SYSTEM
SQLSVCINSTANTFILEINIT: false
SQLSVCPASSWORD: *****
SQLSVCSTARTUPTYPE: Automatic
SQLSYSADMINACCOUNTS: CISMAILPC\ismai
SQLTELSVCACCT: NT Service\SQLTELEMETRY
SQLTELSVCPASSWORD: <empty>
SQLTELSVCSTARTUPTYPE: Automatic
SQLTEMPDBDIR: <empty>
SQLTEMPDBFILECOUNT: 8
SQLTEMPDBFILEGROWTH: 64
SQLTEMPDBFILESIZE: 8
SQLTEMPDBLOGDIR: <empty>
SQLTEMPDBLOGFILEGROWTH: 64
SQLTEMPDBLOGFILESIZE: 8
SQLUSERDBDIR: <empty>
SQLUSERDBLOGDIR: <empty>
SUPPRESSPAIDEDITIONNOTICE: false
SUPPRESSPRIVACYSTATEMENTNOTICE: false
TCPENABLED: 0
UIMODE: Normal
UpdateEnabled: true
UpdateSource: MU
USEMICROSOFTUPDATE: false
USESQLRECOMMENDEDMEMORYLIMITS: false
X86: false
Configuration file: C:\Program Files\Microsoft SQL Server\150\Setup Bootstrap\Log\20220202_021140\ConfigurationFile.ini
Detailed results:
Feature: Database Engine Services
Status: Failed
Reason for failure: An error occurred during the setup process of the feature.
Next Step: Use the following information to resolve the error, uninstall this feature, and then run the setup process again.
Component name: SQL Server Database Engine Services Instance Features
Component error code: 0x851A001A
Error description: Wait on the Database Engine recovery handle failed. Check the SQL Server error log for potential causes.
Error help link: https://go.microsoft.com/fwlink?LinkId=20476&ProdName=Microsoft+SQL+Server&EvtSrc=setup.rll&EvtID=50000&ProdVer=15.0.4013.40&EvtType=0xD15B4EB2%400x4BDAF9BA%401306%4026&EvtType=0xD15B4EB2%400x4BDAF9BA%401306%4026
Feature: SQL Browser
Status: Passed
Feature: SQL Writer
Status: Passed
Feature: SQL Client Connectivity SDK
Status: Passed
Feature: SQL Client Connectivity
Status: Passed
Rules with failures or warnings:
Rules report file: C:\Program Files\Microsoft SQL Server\150\Setup Bootstrap\Log\20220202_021140\SystemConfigurationCheck_Report.htm
问题在于 Windows 11 和 NVMe 驱动器的分区大于 SQL 可以支持的分区。您可以通过在管理员命令提示符中执行“fsutil fsinfo sectorinfo C:”(C:这里是我们尝试在其上安装 SQL 的 NVMe 驱动器)并查看 PhysicalBytesPerSectorForAtomicity“值来检查。它应该是 512 或 4096。
本文中的不同解决方案(注意,部分解决方案需要修改注册表,修改前务必备份):https://learn.microsoft.com/en-us/troubleshoot/sql/admin/故障排除-os-4kb-磁盘扇区大小#cause
文章列出了几个解决方案。您还可以在具有 SQL 支持的正确分区大小(512 或 4096)的另一个驱动器上安装 SQL。
即使 PhysicalBytesPerSectorForAtomicity=4096,在 Windows 11 上安装 SQL2019 也会出现上述问题。我设法克服它的唯一方法是在新创建的 VHD 驱动器 上安装(最新的 SQL Server2022 Express,但它应该也适用于 2019,正如其他人所建议的那样)。以下是创建一个的详细步骤(同样适用于 Windows 11):https://www.windowscentral.com/how-create-and-set-vhdx-or-vhd-windows-10
玩了一下连接配置并成功运行。 祝你好运!✌️
如果您已经尝试安装 Microsoft SQL Server,请确保它已从所有位置正确删除。
清除垃圾并重新启动电脑并运行安装程序,应该可以工作
此问题是因为 Windows 11 与 SQL Server 2019 不兼容。您必须启用 Windows 10 兼容性:
PhysicalBytesPerSectorForAtomicity
的值是你的问题。你应该运行这个命令:
fsutil fsinfo sectorinfo <your drive name>
E.g. fsutil fsinfo sectorinfo E:
如果不是 512 或 4096,您应该运行此命令:
REG ADD "HKLM\SYSTEM\CurrentControlSet\Services\stornvme\Parameters\Device" /v "ForcedPhysicalSectorSizeInBytes" /t REG_MULTI_SZ /d "* 4095" /f
重新启动计算机并重新安装 SQL Server。