![关机后 SQL Server Express 2008 不自动启动](https://linux22.com/image/488180/%E5%85%B3%E6%9C%BA%E5%90%8E%20SQL%20Server%20Express%202008%20%E4%B8%8D%E8%87%AA%E5%8A%A8%E5%90%AF%E5%8A%A8.png)
我们的一个客户拥有一个由 CrystalTech 托管的 Windows 2008 Hyper-V 实例,有时父 Hyper-V 服务器会重新启动而子 VM 尚未正确关闭。
因此,当服务器重新上线时,虚拟机中的 SQL Server Express 服务不会启动,即使它已设置为“自动”。事件日志中没有错误条目。如果您正常重新启动服务器,SQL Server Express 会自行启动。
有人遇到过这个问题吗?有什么解决方法吗?
顺便问一下,当服务器意外关闭时,是否有人有任何好的脚本/方法可以通过电子邮件发送通知?
另外,有人知道 Hyper-V VM 的良好主机吗?
答案1
非常奇怪。我认为这里有些奇怪的事情。如果您有 TechNet 或 MSDN,我会向 MS 提交一个案例来解决这个问题。您的环境或默认的 Windows 或 SQL Server 安装可能存在一些奇怪的问题,从而导致了这种情况。
您可以做的一件事是设置如上所述的任务计划程序项来启动它。
如果您设置在失败时重新启动服务,这样可以吗?
答案2
所有其他服务是否都启动了?
我很惊讶它甚至没有尝试启动。你检查过多个实例吗?我见过有人认为只有一个实例,但实际上有多个,他们检查错了。
没有任何根本原因导致 SQL Express 无法启动。虚拟机崩溃就像 SQL 的硬关机一样,通常它会自行重启。
我可能还会寻找服务依赖关系。我希望 SQL Server 位于依赖链的根部,但它可能依赖于其他东西。
答案3
我也遇到了同样的问题。就我而言,我发现向客户端计算机提供 SQL Server 连接信息的服务 SQL Server Browser 不知何故被更改为已禁用。将其属性更改为自动,一切又恢复正常。
答案4
如何配置一个在启动时运行的应用程序,它只检查 SQL 是否正在运行,如果不存在则启动它?您甚至可以将其配置为定期在任务计划程序下运行。