Loading

SQL Server 2022 Express无法启动,然后重新安装、卸载,中间各种失败😂,记录一下

操作系统:Windows 11 Pro (从Windows 10升级而来,后来貌似又直接重装了Windows 11)
SQL Server版本:SQL Server Express 2022(最后换成Developer版本安装的)

之前一直是正常使用的,每当需要使用的时候,就手动启动MSSQL服务。但是这天启动的时候,启动失败了。
一开始以为是更换硬盘的问题(换硬盘的时候,之前用DiskGenius做了系统迁移),确实,跟换硬盘应该是有关系。通过给服务加参数,能正常启动了。
后来又想试试重装一下,看看不加参数能否正常启动。然后就掉坑里了,卸载之后,重新安装,各种报错,然后尝试修复,也不成功。卸载,重装,修复,卸载,重装,修复...... 不断重复,各种报错。到了下班的时候,卸载报错,没法卸载,然后修复也不成功,也没法重新安装,这下可把我难住了😂。
到了第二天,又试了安装第二个实例,这第二个实例安装成功,有点信心了。又实验了几次,也不断在网上搜资料,好在最后安装成功了。总结一下,之前安装卸载的报错,应该还是卸载之后清理的不彻底的问题。虽然中间有过清理注册表,但是还有其他安装的SQL Server相关的产品没有卸载,估计也有影响吧。
下面记录一下操作过程中遇到的各种问题及解决方法。

一、卸载之后进行清理,保证卸载干净

  1. Win+R打开运行输入services.msc查看所有服务,停止所有与SQL Server有关的服务
  2. 进入控制面板,卸载所有与SQL Server有关的程序(所有相关的程序都要卸载,最开始只是卸载了SQL Server和SQL Server Setup,还有一些应用比如SQL Server VSS Writer/ SQL Browser / SQL Native Client / Microsoft OLE DB Driver for SQL Server / Microsoft ODBC Driver for SQL Server以及其他的,一开始没卸载。后面尝试多次安装卸载,都不成功。需要多检查一下,SQL相关的尽量都卸载掉)
  3. 删除相关的文件夹
    (1)删除安装Microsoft SQL Server数据库物理路径
D:\Program Files\Microsoft SQL Server

(2)删除系统默认的安装文件夹(如果没修改过的话,是下面这两个文件夹)

C:\Program Files\Microsoft SQL Server
C:\Program Files (x86)\Microsoft SQL Server
  1. 删除Sql Server相关注册表
    (1)找到HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Session Manager,删除右边”PendingFileRenameOperations”这一项。【这个自己没删除,貌似不影响】
    (2)删除HKEY_CURRENT_USER\SOFTWARE\Microsoft\Microsoft SQL Server【✅】
    (3)删除HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft下所有关于Microsoft SQL Server的子项【✅】
    (4)删除HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer。【这个貌似在卸载完SQL Server相关的软件之后,系统就把它删掉了,所以也没手动删除】
  2. 卸载完成并清理完后,重启一下电脑

参考文档:【https://blog.csdn.net/qq_42423373/article/details/105323041】

二、安装需要注意的地方及遇到的问题和解决方案

1. 安装之前,关掉防火墙,退出杀毒软件

2. 安装之前,提前改一下注册表,让Windows 11强制模拟4k的扇区

  1. Run Registry Editor as an administrator.
  2. Navigate to Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\stornvme\Parameters\Device.
  3. Select Edit > New > Multi-String value and name it as ForcedPhysicalSectorSizeInBytes.
  4. Right-click the name, select Modify, and type * 4095 in the Value data field.
  5. Select OK and close Registry Editor.
  6. You must reboot the device after adding the registry key for this change to take effect.
    ref:【https://learn.microsoft.com/en-us/troubleshoot/sql/database-engine/database-file-operations/troubleshoot-os-4kb-disk-sector-size?tabs=registry-editor】

3. 每次安装到 Running action: SqlBrowserConfigAction_install_ConfigNonRC_Cpu32 的时候都报错,然后安装失败(SQL Server服务管理器里面找不到服务,也就是服务没能安装成功)

错误信息如下:

The following error has occurred: 

Locating the SQL Server Browser service component failed with Windows Installer return code '2'. The Component ID: '{2E86FD41-C179-456E-8E6A-5157ED427228}'.

Click 'Retry' to retry the failed action, or click 'Cancel' to cancel this action and continue setup.

这个原因大概是卸载的时候,只卸载了SQL Server,没同时卸载SQL Server相关的软件比如前面提到的SQL Server VSS Writer/ SQL Browser / SQL Native Client / Microsoft OLE DB Driver for SQL Server / Microsoft ODBC Driver for SQL Server以及其他的。因为一开始没卸载,所以后面安装的时候一直安装不成功。
相关的软件都卸载完成之后,HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft下面本来有的 Microsoft SQL Server 2005 Redist / Microsoft SQL Server 2012 Redist / Microsoft SQL Server Local DB 等也都没了,不用手动清理。
如果相关软件卸载之后,安装还是到这个地方报错,可以尝试改注册表,删掉 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server 2005 Redist 等类似的信息。
参考【https://www.cnblogs.com/beihainanzhu/p/15715397.html】

三、过程中遇到的其他问题及尝试的解决方案

1. 没重装之前尝试启动SQL Server主服务

根据日志文件,搜了一下,找到了一篇文章。里面讲,日志里面有 There have been 256 misaligned log IOs which required falling back to synchronous IO. 这段,大概率是Windows11 处理磁盘扇区的方式有变化,而SQL Server并不支持。所以可以通过给主服务启动时添加 "-T1800" 来尝试启动。实验之后,确实可以。
参考1:【https://learn.microsoft.com/en-us/answers/questions/1117792/sql-express-2022-database-engine-recovery-handle-f】
参考2:【https://learn.microsoft.com/en-us/troubleshoot/sql/database-engine/database-file-operations/troubleshoot-os-4kb-disk-sector-size?tabs=registry-editor】

2. SQL Server 卸载,卡在 "Running action: SqlEngineConfigAction_remove_validation_Cpu64"

用安装程序修复,然后再去卸载,还是卡在这里。
最后,进管理器,把SQL Server主服务的启动模式改回自动,就好了。
参考【https://cloud.tencent.com/developer/ask/sof/111712311】

后来重新安装,再卸载,还是遇到这个问题的时候,上面这种方式又不管用了。尝试修改注册表,但不确定是不是修改注册表导致的成功卸载,还是说到了这个地方就是需要等一段时间(记录一下,备用)。

修改注册表使能卸载:
HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\下面,新建Key,key值是AppCompat(如果已经有了就不用新建)。
然后再在下面新建32位DWORD值。值名称sbEnable,值value是1(不要建String值,似乎不行。最开始的时候不知道建什么类型,就建的String值,不管用,不知道是不是这个原因,后来建的DWORD值,反正是卸载成功了😄)。
下面参考2文章中说也要在HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Policies\Microsoft\Windows\下面去新建,但是貌似已经跟上面的联动,上面新建,这个地方也自动新建了。上面删掉的时候,下面这里也是删掉了。
参考1:【https://www.daktronics.com/en-us/support/kb/DD4144802】
参考2:【https://www.askvg.com/3-application-compatibility-registry-tweaks-to-boost-windows-vista-and-windows-7-performance/】

3. 修复SQL Server的时候,提示 The file MSODBCSQL.MSI is not valid installation package for the product Microsoft ODBC Drive 17 for SQL Server. Try to find the installation package 'msodbcsql.msi' in a folder from which you can install Microsoft ODBC Driver 17 for SQL Server.

进控制面板,把之前安装的Microsoft ODBC Driver 17 删掉,然后去微软官网重新下一个Microsoft ODBC Driver 17 ,再安装,然后再修复,就正常修复安装了,不会再报这个错误。

下载【https://learn.microsoft.com/zh-cn/sql/connect/odbc/download-odbc-driver-for-sql-server?view=sql-server-ver16#version-17】

4.完全卸载SQL Server

参考
https://blog.csdn.net/qq_42423373/article/details/105323041】
https://blog.csdn.net/qq_36171287/article/details/88760739】
https://www.sql-easy.com/learn/how-to-uninstall-sql-server/】

5. 附加之前的数据库文件时,提示"CREATE FILE encountered operating system error 5(Access is denied.)"。

解决方法:找到数据库mdf及ldf文件,右键,属性,给Authenticated Users赋予完全控制的权限,然后再去附加之前的数据库文件就没问题了。
参考文档:【https://blog.csdn.net/ibsfn/article/details/80770855】

6. 其他参考文档

Windows 11 安装 SQLSERVER 出现问题解决
https://cloud.tencent.com/developer/article/2515628

posted @ 2025-07-02 14:40  asashadow  阅读(394)  评论(0)    收藏  举报