升级三星固态硬盘能导致SQL Server不能启动,连重装都失败了,SSD 4K扇区大小影响有点大

问题

有一段时间没用VS2022了,今天把它升级到17.12,然后打开项目发现localdb不能用了,启动不起来。

Win11 24H2
SQL Server LocalDb 2019
Visual Studio 2022 17.12
C:\Windows\System32>sqllocaldb delete localDB1
LocalDB instance "localDB1" deleted.

C:\Windows\System32>sqllocaldb create localDB1
Creation of LocalDB instance "localDB1" failed because of the following error: Error occurred during LocalDB instance startup: SQL Server process failed to start.

寻找原因

搜索了下,又问了下AI都没有结果。看了下localdb的版本还是2019,并未升级,不应该啊。

卸载现有的2019,然后重新安装2019. 问题依旧。

下载安装sql server express 2019,竟然安装失败。

继续网上搜索,找到了有人因三星固态硬盘的4K扇区尺寸4096和微软默认值不通导致的无法启动。联想我的电脑刚升级了三星的980nvme m.2固态硬盘,马上改改看。

解决办法

修改注册表强制指定4K扇区大小:

打开注册表编辑器 (regedit.exe).

找到

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\stornvme\Parameters\Device.

增加一个多字符串值:ForcedPhysicalSectorSizeInBytes.

值设为: * 4096 (不是 * 4095 这个微软建议值).

Fix-sql-server-do-not-start

重启计算机,Localdb工作正常了。 

相关链接

https://learn.microsoft.com/en-us/troubleshoot/sql/database-engine/database-file-operations/troubleshoot-os-4kb-disk-sector-size

原文链接:https://www.500599.xyz/posts/db/sql-server-can-not-start/

posted @   jopny  阅读(30)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek “源神”启动!「GitHub 热点速览」
· 我与微信审核的“相爱相杀”看个人小程序副业
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· C# 集成 DeepSeek 模型实现 AI 私有化(本地部署与 API 调用教程)
· spring官宣接入deepseek,真的太香了~
点击右上角即可分享
微信分享提示