本部分提供了一个集中位置,用于了解使用 BizTalk Server 管理控制台时遇到的常见问题。
除了以下已知问题之外, BizTalk Server 管理控制台的常见问题和解决方法 还提供其他信息。
已知问题
ENTSSO 服务中的延迟会阻止 BizTalk Server 服务启动
问题
重新启动未设置为自动启动 DTC 的计算机可能会阻止 BizTalk Server 服务启动。
原因
这是因为 ENTSSO 服务启动所需的时间比 BizTalk Server 服务超时持续时间允许的时间要长。
解决方案
若要解决此问题,请将 DTC 设置为自动。 如果 DTC 已群集化,则应将其设置为手动启动,因为群集服务正在管理群集服务的启动和停止。
SQL 资源可能已锁定
问题
可能会出现以下错误:
事务进程(进程 ID 95)与另一个进程在锁资源上发生死锁,并被选为死锁的牺牲者。 重新运行该事务。
原因
这是一种非常罕见的情况,即一个用户执行的管理操作会导致另一个用户无法访问数据库管理权限。
解决方案
问题应该很快纠正。 请在几分钟后再次尝试该操作。
SQL 数据库可能已锁定
问题
用户可能被锁定在 SQL 数据库外。 可能会返回许多不同的错误消息。
原因
在某些情况下,写入数据库的一个用户将有效地将另一个用户从数据库中锁定。
解决方案
问题应该很快纠正。 在几分钟后再次尝试该操作。
在多个消息框环境中终止多个服务实例失败,并出现错误
问题
尝试从 BizTalk Server 管理控制台终止多个服务实例失败,并显示类似于以下内容的错误:
SQL Server 阻止了访问组件“代理 XP”的过程“sys.xp_sqlagent_enum_jobs”,因为在此服务器的安全配置中,该组件已被关闭。
注释
此问题发生在多个邮件框环境中。
原因
在多消息框环境中,如果 SQL 代理作业“Operations_OperateOnInstances_OnMaster_<dbName>”未在备用消息框数据库上运行,则可能会出现此问题。 必须运行此作业,才能将信息从辅助消息箱数据库传播到主消息箱数据库。 如果未启用此作业或登录失败,则此作业将无法运行。
解决方案
如果使用 BizTalk 管理控制台同时对多个服务实例执行作,并且 BizTalk Server 环境配置了多个消息框数据库,请验证是否在所有辅助(非 master)消息框数据库上启用了名为“Operations_OperateOnInstances_OnMaster_<dbName>”的 SQL Server 代理作业。 此外,托管辅助消息箱数据库的 SQL Server 计算机上的 SQL Server 代理服务必须以包含在辅助消息箱数据库 BTS_SQLAGENT_USER 数据库角色中的帐户身份运行。
注释
< dbname> 是 BizTalk 消息框数据库的实际名称的占位符。
按以下步骤将 SQL Server 代理服务帐户添加到辅助消息框数据库中 BTS_SQLAGENT_USER 数据库角色中。
在 SQL Server 2008 上
依次单击“ 开始”、“ 所有程序”、“ Microsoft SQL Server 2008”,然后单击“ SQL Server Management Studio”。
出现提示时,选择数据库引擎的服务器类型,然后输入或选择承载辅助消息框数据库的服务器名称。
单击以展开 数据库,单击以展开次级消息框数据库,单击以展开 安全性,单击以展开 角色,单击以展开 数据库角色,然后双击 BTS_SQLAGENT_USER 数据库角色。
单击“ 添加 ”按钮。
单击“ 浏览”,选择 SQL Server 代理服务帐户所属的组,然后单击“ 确定”。
注释
如果 SQL Server 代理服务帐户不是指定组的成员,则需要将其添加到组中。
BizTalk 管理控制台的一个实例中应用的更改不会在 BizTalk 管理控制台的其他实例中自动更新
问题
如果 BizTalk 管理控制台的多个实例同时连接到同一 BizTalk Server 组,则 BizTalk 管理控制台的一个实例中所做的更改不会自动反映在 BizTalk 管理控制台的其他实例中。 如果项目状态与 BizTalk 管理数据库中存储的项目的实际状态不匹配,则尝试修改 BizTalk 管理控制台实例中显示的项目时,这可能会导致并发冲突错误。
原因
BizTalk 管理控制台的每个实例维护其自己的 BizTalk 组配置的缓存,并且仅反映缓存中的更改。 仅当刷新 BizTalk 管理控制台视图时,才会更新缓存。
决议
如果在 BizTalk 管理控制台中收到并发冲突错误,请单击 BizTalk 管理控制台工具栏上的 “刷新 ”按钮或按 F5 键更新 BizTalk 管理控制台实例的缓存。
尝试使用 BizTalk 管理控制台停止编排任务时,会出现“停止”操作执行失败的错误。
问题
尝试在 BizTalk 管理控制台中停止业务流程时,将生成类似于以下内容的错误消息:
Failed to execute action 'Stop'.
------------------------------
ADDITIONAL INFORMATION:
A transport-level error has occurred when sending the request to the server. (provider: TCP Provider, error: 0 - An existing connection was forcibly closed by the remote host.) (Microsoft SQL Server, Error: 10054)
如果满足以下条件,可能会出现此问题:
BizTalk 管理控制台已打开。
BizTalk 管理数据库安装在 SQL Server 的群集实例上。
SQL Server 的群集实例已被故障转移。
故障转移完成后,您尝试使用 BizTalk 管理控制台停止正在运行的编配实例。
原因
BizTalk 管理控制台维护与 BizTalk Server 管理数据库的连接。 故障转移期间与 BizTalk Server 管理数据库的连接中断时,某些管理任务可能会返回“无法连接”或“无法执行”错误,直到 BizTalk 管理控制台关闭并重新打开。
决议
关闭并重新打开 BizTalk 管理控制台。 当 BizTalk 管理控制台重新打开时,它将创建与指定的 BizTalk Server 管理数据库的新连接。
以前删除的 Windows 组名称无权访问 BizTalk Server 数据库
问题
如果重新安装 BizTalk Server 时,使用以前删除的 Windows 组名称,则 Windows 组将无法访问 BizTalk Server 数据库。
原因
删除 Windows 组,然后创建具有相同名称的 Windows 组将为 Windows 组生成新的安全标识符(SID)。 但是,旧的 SID 仍缓存在 SQL Server 中,因此新的 Windows 组无法登录到 SQL Server。
决议
删除 Windows 组时,还必须删除 Windows 组的 SQL Server 登录名。
BizTalk 管理员无法启动 BizTalk Server 管理控制台
问题
如果 BizTalk 管理员不是本地计算机上的 Windows 管理员组的成员,则 BizTalk 管理员(BizTalk 管理员 Windows 组的成员)可能无法打开 BizTalk Server 管理控制台。
原因
如果重新安装或重新配置了 BizTalk Server,则可能会出现此问题。 这是因为 SQL Server 使用了缓存的安全 ID。
决议
暂时将 BizTalk 管理员添加到本地计算机上的本地 Windows 管理员组。 成功打开 BizTalk Server 管理控制台后,从本地计算机上的本地 Windows 管理员组中删除 BizTalk 管理员。
无法在远程计算机上启动主机实例
问题
在远程计算机上创建 BizTalk 主机实例时,启动 BizTalk 主机实例时可能会看到以下错误:“由于登录失败而无法启动”。
原因
如果您为运行 BizTalk 主机实例的服务帐户输入了无效凭据,或该服务帐户没有“登录为服务”权限,则可能会发生此错误。
决议
在启动 BizTalk 主机实例之前,将“登录为服务”的权限分配给远程计算机中的服务帐户。 这在本地计算机上自动完成,但必须在远程计算机上手动完成。
在选中“仅 32 位”选项的 X64 计算机上创建或配置主机实例失败
问题
在 BizTalk Server 管理控制台中,在 X64 计算机上创建仅选择 32 位选项(默认值)的 BizTalk 主机实例可能会失败。
在 BizTalk Server Configuration Manager 中,在 X64 计算机上配置 BizTalk Server 运行时时,创建进程内或独立主机实例(仅选择 32 位选项)可能会导致服务无法启动。
原因
未知
决议
此问题是间歇性的。 尝试再次创建或配置主机,或取消选择仅 32 位选项。
主机实例删除未清除注册表信息
问题
如果你不是本地计算机上的管理员,则删除进程内或隔离主机时,将显示访问被拒绝的错误消息。 可以强行删除主机。 但是,以这种方式删除主机不会清除所有相关注册表信息。
原因
删除与主机实例相关的注册表信息需要管理员权限。
决议
在删除主机之前以本地管理员帐户身份登录,以便也会删除相关的注册表信息。
无法删除 MessageBox 数据库
问题
可能无法删除 MessageBox 数据库。 如果删除失败,以下问题之一可能负责:
缓存刷新间隔尚未过期。
MessageBox 数据库包含不完整的实例。
如果缓存刷新间隔尚未过期,则删除失败时会显示以下错误消息:“无法删除 MessageBox,因为 MessageBox 中可能存在剩余工作。 请确保 MessageBox 中没有更多不完整的实例,然后重试。
原因
缓存刷新间隔必须在禁用 MessageBox 数据库中的新邮件发布和删除数据库的时间之间过期。 默认情况下,缓存刷新间隔为 60 秒。
决议
若要删除 MessageBox 数据库,必须先为该 MessageBox 数据库禁用新邮件发布,然后等待缓存刷新间隔过期,然后再删除 MessageBox 数据库。
如果 MessageBox 数据库包含不完整的服务实例,将显示以下错误消息:“无法删除 MessageBox,因为它可能仍包含不完整的实例。 确保 MessageBox 中没有不完整的实例,然后重试”。
可以使用 BizTalk Server 管理控制台中的“组中心”页在 MessageBox 数据库中查看不完整的服务实例。 有关在“组中心”页中查看服务实例的状态的信息,请参阅 “如何搜索跟踪的服务实例”。