windows11安装sqlserver 2016数据库报错等待数据库引擎恢复句柄失败解决办法
一、问题描述
SQL Server : installation fails with error code 0x851A001A – Wait on the Database Engine recovery handle failedSQL Server:安装失败,错误代码为 0x851A001A – 等待数据库引擎恢复句柄失败


二、问题原因
这是由磁盘的扇区大小引起的。
在服务启动期间,SQL Server 会启动数据库恢复过程以确保数据库的一致性。此数据库恢复过程的一部分涉及在尝试打开系统和用户数据库文件的活动之前对底层文件系统进行一致性检查。
在运行 Windows 11 的系统上,一些新的存储设备和设备驱动程序将公开一个大于支持的 4 KB 扇区大小的磁盘扇区大小。
发生这种情况时,由于文件系统不受支持,SQL Server 将无法启动,因为 SQL Server 当前支持 512 字节和 4 KB 的扇区存储大小。
可以通过运行以下命令来确认您是否遇到了此特定问题:
fsutil fsinfo 扇区信息 E:
查找值 PhysicalBytesPerSectorForAtomicity,以字节为单位返回。值 4096 表示扇区存储大小为 4 KB。
三、 解决方案
可以通过添加一个注册表项,该注册表项将使 Windows 11 及更高版本的行为类似于 Windows 10。这将强制将扇区大小模拟为 4 KB 大小。要添加 ForcedPhysicalSectorSizeInBytes 注册表项,请使用注册表编辑器,或者可以在 Windows 命令提示符或 PowerShell 中以管理员身份运行命令
1、打开注册表编辑器

2、以管理员身份运行命令提示符
添加密钥
REG ADD "HKLM\SYSTEM\CurrentControlSet\Services\stornvme\Parameters\Device" /v "ForcedPhysicalSectorSizeInBytes" /t REG_MULTI_SZ /d "* 4095" /f在这里插入代码片
验证是否已成功添加密钥
REG QUERY "HKLM\SYSTEM\CurrentControlSet\Services\stornvme\Parameters\Device" /v "ForcedPhysicalSectorSizeInBytes"在这里插入代码片
3、以管理员身份运行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匹配。
总结
到此这篇关于windows11安装sqlserver 2016数据库报错等待数据库引擎恢复句柄失败解决办法的文章就介绍到这了,更多相关SQL server报错等待数据库引擎恢复句柄失败内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
SQL order by ID desc/asc加一个排序的字段解决查询慢问题
解决方法就是在order by ID desc再加一个排序的字段,这样子可能会把速度提高很多,需要朋友可以试一下2012-12-12
针对Sqlserver大数据量插入速度慢或丢失数据的解决方法
这篇文章主要介绍了针对Sqlserver大数据量插入速度慢或丢失数据的解决方法,很有实用价值,需要的朋友可以参考下2014-07-07
精妙的SQL和SQL SERVER 与ACCESS、EXCEL的数据导入导出转换
sqlserver 与access,excel互相导入导出代码2008-03-03
SQL Server 2012 创建定时作业(图文并茂,教你轻松快速创建)
这篇文章主要介绍了SQL Server 2012 创建定时作业,图文并茂,教你轻松快速创建,需要的朋友可以参考下2015-01-01
MS sqlserver 2008数据库转换成2000版本的方法
这篇文章主要为大家详细介绍了MS sqlserver 2008数据库转换成2000版本的方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下2016-11-11


最新评论