SQL Server 2012 Express 的一个实例不知何故损坏了。
我怀疑它在某种程度上与我使用实体框架有关,但还没有证据。
尝试修复实例时,修复过程似乎卡在 SqlEngineConfigAction_repair_validation_Cpu64 步骤。
在那一步很长一段时间没有明显的CPU使用率,所以我最终取消了修复过程。
尝试删除实例时,卸载过程似乎挂在 SqlEngineConfigAction_remove_validation_Cpu64 步骤。
尝试安装第二个实例时,安装过程似乎挂在 SqlEngineDBStartConfigAction_install_configrc_Cpu64 步骤。
对于某些尝试,SQL Server 服务并未事先手动停止。对于其他尝试,服务被手动停止,并从“自动”更改为“手动”。
数据库损坏的症状,以防这有帮助:
“SQL Server (SQLEXPRESS)”服务在系统重新启动时的状态为“已启动”,但在使用“重新启动”选项手动重新启动服务时卡在“正在启动”状态。
当服务被手动停止然后启动时,它会显示这个错误:
Windows 无法在本地计算机上启动 SQL Server (SQLEXPRESS) 服务。错误 1053:服务未及时响应启动或控制请求。
SSMS (SQL Server Management Studio) 无法连接到实例。它要么永远尝试,不显示超时或错误,要么显示以下错误:
与服务器成功建立连接,但在登录前握手期间发生错误。(提供者:SSL 提供者,错误:0 - 等待操作超时。)(Microsoft SQL Server,错误:258)
编辑:我猜投反对票是因为这不是以问题的形式说明的。所以澄清一下,问题是如何解决修复、删除或安装过程挂起的问题?
EDIT2:作为后续,事实证明损坏的根本原因是在没有首先明确停止 SQL Server 服务的情况下关闭了 Windows 7 PC,即使当时没有积极使用 SQL Server Express。
EDIT3:问题似乎已在 SQL Server 2014 Express 中得到解决。