KB4087406 - 修复:当SQL Server 2014、2016 和 2017 年没有足够磁盘空间用于关键日志增长时,错误 9002

应用对象
SQL Server 2014 Service Pack 2 - duplicate (do not use) SQL Server 2014 Developer - duplicate (do not use) SQL Server 2014 Enterprise - duplicate (do not use) SQL Server 2014 Enterprise Core - duplicate (do not use) SQL Server 2014 Standard - duplicate (do not use) SQL Server 2016 Service Pack 1 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 2017 on Windows SQL Server 2017 Developer SQL Server 2017 Enterprise SQL Server 2017 Enterprise Core

症状

在 Microsoft SQL Server 2014、2016 或 2017 中运行多个非文件增长操作(例如备份)时,这些操作可能会耗尽所有磁盘空间,并且没有足够的空间用于关键日志增长。 由于数据库无法创建更多日志空间,因此数据库修改和与辅助数据库的同步失败,恢复失败,并且数据库无法联机。 此外,还可能会收到以下一条或多条错误消息:

  • 注意

    错误 9002,严重性:17,状态:9。
    由于“AVAILABILITY_REPLICA”,数据库“DatabaseName”的事务日志已满

  • 注意

    警告 3052:消息 3052,级别 16,状态 1,行 编号
    BACKUP LOG 无法记录数据库“DatabaseName”的更新。
    在日志空间可用于记录备份点后,需要后续日志备份才能将备份点从“LSNID1”推进到“LSNID2”。

  • 注意

    错误 3314
    在数据库“DatabaseName”中撤消记录的操作期间,日志记录 ID %S_LSN 发生错误。 通常,特定失败以前在 Windows 事件日志服务中记录为错误。 从备份还原数据库或文件,或修复数据库。

解决方法

此修补程序包含在以下SQL Server累积更新中:

SQL Server 2016 SP2 的累积更新 1

2017 SQL Server累积更新 5

SQL Server 2016 SP1 的累积更新 8

SQL Server 2014 SP2 的累积更新 11

关于SQL Server的累积更新:

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

SQL 服务 2017 的最新累积更新

SQL Server 2016 年的最新累积更新

SQL Server 2014 年的最新累积更新

状态

Microsoft 已确认在 "适用于" 部分中所列的 Microsoft 产品中存在问题。

参考资料

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