你目前正处于脱机状态,正在等待 Internet 重新连接

当您试图恢复 SQL Server 2008 R2 中的数据库时修复: 断言错误

注意:这篇文章是由无人工介入的微软自动的机器翻译软件翻译完成。微软很高兴能同时提供给您由人工翻译的和由机器翻译的文章, 以使您能使用您的语言访问所有的知识库文章。然而由机器翻译的文章并不总是完美的。它可能存在词汇,语法或文法的问题,就像是一个外国人在说中文时总是可能犯这样的错误。虽然我们经常升级机器翻译软件以提高翻译质量,但是我们不保证机器翻译的正确度,也不对由于内容的误译或者客户对它的错误使用所引起的任何直接的, 或间接的可能的问题负责。

点击这里察看该文章的英文版: 2503834
Microsoft 将 Microsoft SQL Server 2008 R2 修补程序分发作为一个可下载的文件。修补程序是累积性的因为每个新版本包含的所有修补程序和所有安全修补程序包含以前的 SQL Server 2008 R2 修补程序版本。
症状
在 Microsoft SQL Server 2008 R2,数据库被标记为可疑,当您试图将数据库恢复。此外,SQL Server 2008 R2 错误日志文件中记录了以下的断言错误:
<date> <time> <spid>错误: 17066,严重性: 16,状态: 1。</spid></time></date>

<date> <time> <spid>SQL Server 断言: 文件: <page.cpp>,行 = 4953 失败的断言 = m_freeCnt + emptySlots * sizeof (插槽) &gt; = spaceNeeded。此错误可能是计时相关。如果错误仍然存在后重新运行该语句,使用 DBCC CHECKDB 检查的数据库结构的完整性,或重新启动服务器,以确保内存中的数据结构未损坏。</page.cpp></spid></time></date>
请注意发生此问题时,您必须从问题中恢复的备份还原数据库。
原因
因为页可能没有足够的空间恢复数据库时,会出现此问题。

参与任何线程联机索引重建操作或收缩数据库操作可以压缩新页。如果页面没有足够的空间,肯定出错。

解决方案

累积更新信息


此问题的修补程序是累积性更新 7 中首次推出。有关如何获取此累积更新包的 SQL Server 2008 R2 的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
2489376SQL Server 2008 R2 的累积更新包 7
请注意生成是累积性的因为每个新修补程序版本包含的所有修补程序和所有安全修补程序包含以前的 SQL Server 2008 R2 修补程序版本。我们建议您考虑应用最新的修补程序版本包含此修复程序。有关详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
981356SQL Server 2008 R2 生成 SQL Server 2008 R2 发布后发布
状态
Microsoft 已经确认这是在"适用于"一节中列出的 Microsoft 产品中的问题。

警告:本文已自动翻译

属性

文章 ID:2503834 - 上次审阅时间:04/19/2011 07:59:00 - 修订版本: 2.0

Microsoft SQL Server 2008 R2 Datacenter, Microsoft SQL Server 2008 R2 Developer, Microsoft SQL Server 2008 R2 Enterprise, Microsoft SQL Server 2008 R2 Express, Microsoft SQL Server 2008 R2 Express with Advanced Services, Microsoft SQL Server 2008 R2 Standard, Microsoft SQL Server 2008 R2 Standard Edition for Small Business, Microsoft SQL Server 2008 R2 Web, Microsoft SQL Server 2008 R2 Workgroup

  • kbqfe kbfix kbsurveynew kbexpertiseadvanced kbmt KB2503834 KbMtzh
反馈