sql server 启用Service Broker时一直处于“执行中”

本以为只需要执行以下脚本即可对数据库启用Service broker,但是,执行后,脚本一直处于执行状态

alter database TCX_1907 set enable_broker;

查询数据库是否启用Service broker的脚本如下,is_broker_enabled为0未启用,为1启用

select service_broker_guid,name,is_broker_enabled from sys.databases 

查看之后为0,果然没启用成功!

再次百度之后发现需要多执行一句以下代码:

ALTER DATABASE TCX_1907 SET NEW_BROKER WITH ROLLBACK IMMEDIATE; (多执行这一句)

ALTER DATABASE TCX_1907 SET ENABLE_BROKER;

再次查看发现is_broker_enabled为1,启用成功!!!

原文地址:https://www.cnblogs.com/luna-hehe/p/13201756.html