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

您遇到阻塞,死锁条件或其他 SQL Server 问题,当您试图连接到 BizTalk Server 中的 BizTalkMsgBoxDb 数据库

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

点击这里察看该文章的英文版: 917845
症状
在 Microsoft BizTalk Server,您遇到阻塞,死锁条件或其他 Microsoft SQL Server 问题,当您试图连接到 BizTalkMsgBoxDb 数据库。
原因
可能出现此问题,如果一个或多个下列条件都为真:
  • " 自动创建统计信息 在 BizTalkMsgBoxDb 数据库上启用选项。
  • " 自动更新统计信息 在 BizTalkMsgBoxDb 数据库上启用选项。
  • " 最大并行度 选项设置为 1 上的计算机正在运行 SQL Server 的承载 BizTalkMsgBoxDb 数据库之外的其他值。
  • 进行碎片整理或重新生成的 BizTalkMsgBoxDb 数据库中的索引,BizTalk 服务器处理数据时。
解决方案
要解决此问题,请使用下列方法之一。

方法 1: 禁用自动创建统计信息选项和自动更新统计信息选项

若要解决此问题,请禁用 自动创建统计信息 选项和 自动更新统计信息 在 SQL Server 的 BizTalkMsgBoxDb 数据库的选项。

方法 2: 将最大程度的并行度选项设置为 1

若要解决此问题,请将设置 最大并行度 1 的计算机上运行 SQL Server 的选项。

方法 3: 不重新生成索引时 BizTalk 服务器正在处理数据

要解决此问题,请不要运行 bts_RebuildIndexes 存储的过程或任何 BizTalk 服务器正在处理数据时重建 BizTalk Server 数据库中的索引的 SQL 命令。

请注意 不支持对 BizTalk Server 数据库中的索引进行碎片整理。
更多信息

Bts_RebuildIndexes 存储过程

重建索引 BizTalkMsgBoxDb 数据库中的唯一受支持的方法是运行 bts_RebuildIndexes 存储的过程。在 BizTalk Server 2006 和更高版本,您可以运行 dtasp_RebuildIndexes 重建索引 BizTalkDTADb 数据库中的存储的过程。

BizTalk 索引的大多数都基于 GUID。很多测试已表明只要不会扫描表,基于 GUID 的索引可以更好地为 BizTalk 特定工作负载的基于身份的索引比执行。这可能会导致碎片。但是,因为以稳定的表中的数据流,碎片可能不会导致任何问题。如果以 BizTalkMsgBox 数据库中生成大量的数据,可以在计划内停机期间定期重建索引。同样的准则应用到跟踪数据库。

DBCC DBREINDEX SQL 命令可用于重建的其它 BizTalk Server 数据库中的索引。有关如何使用 DBCC DBREINDEX SQL 命令的示例,请用鼠标右键单击 bts_RebuildIndexes 存储的过程,然后单击 属性.

请注意Microsoft 仅支持在 BizTalk 服务器停机时间重建数据库索引。重建索引之前,应停止所有主机实例和 SQL Server 代理。当您运行bts_RebuildIndexes 在 BizTalk Server 2006 和更高版本的存储的过程,您可能会收到以下错误消息之一:
错误消息 1
消息 6079,级别 16,状态 1 过程 bts_RebuildIndexes 4 行
无法处理对象 ID 674101442 (对象 TrackingData)
此数据库一致性检查器 (DBCC) 命令不支持这种类型的对象。
错误消息 2
消息 6079,级别 16,状态 1 过程 bts_RebuildIndexes 4 行无法处理对象 ID 722101613 (对象 TrackingData),因为此 DBCC 命令不支持此类型的对象。

出现此问题的原因TrackingData对象是 BizTalk Server 2006 和更高版本中的视图。要解决此问题,请执行以下操作,然后执行bts_RebuildIndexes 存储的过程:
  1. 注释行中的以下行 bts_RebuildIndexes 存储的过程。
    DBCC DBREINDEX ('[dbo].[TrackingData]') WITH NO_INFOMSGS
  2. 添加以下行 bts_RebuildIndexes 存储的过程。
    DBCC DBREINDEX ('[dbo].[TrackingData_0_0]') WITH NO_INFOMSGSDBCC DBREINDEX ('[dbo].[TrackingData_0_1]') WITH NO_INFOMSGSDBCC DBREINDEX ('[dbo].[TrackingData_0_2]') WITH NO_INFOMSGSDBCC DBREINDEX ('[dbo].[TrackingData_0_3]') WITH NO_INFOMSGSDBCC DBREINDEX ('[dbo].[TrackingData_1_0]') WITH NO_INFOMSGSDBCC DBREINDEX ('[dbo].[TrackingData_1_1]') WITH NO_INFOMSGSDBCC DBREINDEX ('[dbo].[TrackingData_1_2]') WITH NO_INFOMSGSDBCC DBREINDEX ('[dbo].[TrackingData_1_3]') WITH NO_INFOMSGS

警告:本文已自动翻译

属性

文章 ID:917845 - 上次审阅时间:05/28/2011 00:27:00 - 修订版本: 2.0

Microsoft BizTalk Server Branch 2010, Microsoft BizTalk Server Developer 2010, Microsoft BizTalk Server Enterprise 2010, Microsoft BizTalk Server Standard 2010, Microsoft BizTalk Server 2009 Branch, Microsoft BizTalk Server 2009 Developer, Microsoft BizTalk Server 2009 Enterprise, Microsoft BizTalk Server 2009 Standard, Microsoft BizTalk Server 2006 R2 Branch, Microsoft BizTalk Server 2006 R2 Developer Edition, Microsoft BizTalk Server 2006 R2 Enterprise Edition, Microsoft BizTalk Server 2006 R2 Standard Edition, Microsoft BizTalk Server 2006 Standard Edition, Microsoft BizTalk Server 2006 Developer Edition, Microsoft BizTalk Server 2006 Enterprise Edition, Microsoft BizTalk Server 2004 Standard Edition, Microsoft BizTalk Server 2004 Developer Edition, Microsoft BizTalk Server 2004 Enterprise Edition, Microsoft BizTalk Server 2004 Partner Edition

  • kbbts kbtshoot kbprb kbmt KB917845 KbMtzh
反馈