解决:无法终止无法挂起BizTalk正在运行的服务实例的问题

算半个技巧吧……

不过我相信这个问题真的曾经困扰着一些人……包括我,和一个与我聊过的客户。

问题是这样的,我们经常将一些业务流程发布为Web Service。在我们测试这些Web Service的时候,会碰到业务流程内部出错的问题。
有的时候,这些测试过程中产生的BizTalk服务实例,会始终处于运行状态,无法终止,无法挂起。

如下图:
我们尝试在组概述中终止活动的服务实例。
1

结果可能是:“失败”。“失败”这里没有截到图。
总之,这可能会导致你的“活动”的服务实例越来越多,如果是生产环境那就会变得非常不可想象。

 

解决方法:
正确开启SQL Server Agent,使BizTalk相关的job正常运行,即可解决该问题。
打开SQL Server管理器,开启SQL Server代理:
2

3

4 

如果开启后,在应用程序日志中发现以下报错:

SQL Server Scheduled Job 'PurgeSubscriptionsJob_BizTalkMsgBoxDb' (0xA0964CF90DBD9D4C84BF48E7BA52CB34) - Status: 失败 - Invoked on: 2010-08-16 14:42:00 - Message: 该作业失败。  无法确定所有者 XXXX/xxxxxxxx (拥有作业 PurgeSubscriptionsJob_BizTalkMsgBoxDb)是否有服务器访问权限 (原因: 无法获取有关 Windows NT 组/用户 XXXX/xxxxxxxx' 的信息,错误代码 0x5。 [SQLSTATE 42000] (错误 15404)).

有关更多信息,请参阅在 http://go.microsoft.com/fwlink/events.asp 的帮助和支持

报错信息中的Job也可能是BizTalk Server的其他Job:
MessageBox_DeadProcesses_Cleanup_BizTalkMsgBoxDb
MessageBox_Message_Cleanup_BizTalkMsgBoxDb
MessageBox_Message_ManageRefCountLog_BizTalkMsgBoxDb
MessageBox_Parts_Cleanup_BizTalkMsgBoxDb
MessageBox_UpdateStats_BizTalkMsgBoxDb
Operations_OperateOnInstances_OnMaster_BizTalkMsgBoxDb
PurgeSubscriptionsJob_BizTalkMsgBoxDb
Rules_Database_Cleanup_BizTalkRuleEngineDb
TrackedMessages_Copy_BizTalkMsgBoxDb

如果碰上这个问题,可以尝试为SQL Server代理中的作业,更换更高权限“所有者”的账户:
5

6
经过以上修改即可修复无法终止无法挂起的服务实例问题。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值