Applies ToSQL Server 2014 Service Pack 2 - duplicate (do not use) SQL Server 2014 Enterprise - duplicate (do not use) SQL Server 2014 Enterprise Core - duplicate (do not use) SQL Server 2014 Developer - duplicate (do not use) SQL Server 2014 Standard - duplicate (do not use) SQL Server 2016 Developer - duplicate (do not use) SQL Server 2016 Enterprise - duplicate (do not use) SQL Server 2016 Enterprise Core - duplicate (do not use) SQL Server 2016 Standard - duplicate (do not use) SQL Server 2016 Service Pack 1

症状

在包含大量数据库的 Microsoft SQL Server 2014 或2016实例上安装修补程序时,安装可能失败。 您可能会收到以下错误消息:

Microsoft.SqlServer.Configuration.SqlEngine.SqlEngineConfigException: Failed to shutdown the instance with process ID xxxx. Error encountered: 
Microsoft.SqlServer.Configuration.Sco.ScoException: The service cannot accept control messages at this time.

此外,SQL Server 实例保留为 "已停止" 状态。

原因

出现此问题的原因是在安装 SQL Server 修补程序期间,它将尝试重新启动 SQL Server 服务以应用修补程序。 但是,如果 SQL Server 需要很长时间来自行终止,安装程序将失败。

注意 如果有许多数据库(如 300 ~ 1000 或更多),并且 SQL Server 配置为使用大量内存(如 20 GB ~ 2 TB),则 SQL Server 可能需要花费一些时间来执行每个数据库的干净关闭,并且修补程序设置可能会失败,因为 SQL Server 需要很长时间才能自行关闭。

解决方案

在 SQL Server 的以下累积更新中修复了此问题:

SQL Server 2016 RTM 的累积更新5

SQL Server 2016 SP1 的累积更新2

SQL Server 2014 的累积更新 4 Service Pack 2

SQL Server 的每个新的累积更新包含以前的累积更新中包含的所有修补程序和安全修补程序。 查看 SQL Server 的最新累积更新:

SQL Server 2016 的最新累计更新

L atest SQL Server 201 的累积更新

注意应用此修补程序后,修补程序安装程序将等待 SQL Server 停止最多30分钟。 如果超过30分钟的 SQL Server 仍在停止,则修补程序设置可能仍然失败。

 

状态

Microsoft 已确认这是在“适用范围”部分中列出的 Microsoft 产品存在的问题。

 

参考

了解 Microsoft 用于描述软件更新的 术语

 

需要更多帮助?

需要更多选项?

了解订阅权益、浏览培训课程、了解如何保护设备等。

社区可帮助你提出和回答问题、提供反馈,并听取经验丰富专家的意见。