当前数据库未启用Service broker

数据库分离(备份)后,附加(还原)回到数据库,然后在程序中打开调用数据库的页面,出现如下问题:“未启用当前数据库的
SQL Server Service Broker,因此查询通知不受支持。如果希望使用通知,请为此数据库启用 Service Broker

”。

解决方案:(可直接执行第二步)
在使用的数据库下,依次执行如下语句:
第一步:
SELECT is_broker_enabled FROM sys.databases WHERE name = ‘数据库名称‘

执行发现:查看is_broker-enabled为0,依然未启用Service broker

第二步:
ALTER DATABASE 数据库名称 SET NEW_BROKER WITH ROLLBACK IMMEDIATE;
ALTER DATABASE 数据库名称 SET ENABLE_BROKER;

第三步:
SELECT is_broker_enabled FROM sys.databases WHERE name = ‘数据库名称‘

执行发现:查看is_broker-enabled为1,表示启用Service broker。

NEW_BROKER选项,SQL SERVER联机丛书上的解释:
每个数据库都包含一个 Service Broker 标识符。sys.databases 目录视图的 service_broker_guid 列显示该

实例中每个数据库的 Service Broker 标识符。Service Broker 路由使用 Service Broker 标识符来保证一个

会话的所有消息都传递到同一个数据库。因此,Service Broker 标识符在同一网络上的所有实例中应是唯一的

。否则,消息可能被误传。
SQL Server 为每个新数据库生成新的 Service Broker 标识符。由于标识符是新的,因此 SQL Server 可以安

全地激活新数据库中的 Service Broker 消息传递。网络上的其他数据库应该不会有与之相同的 Service

Broker 标识符。
NEW_BROKER。此选项用于激活 Service Broker 消息传递,同时为数据库创建新的 Service Broker 标识符。由

于该数据库中所有的现有会话都未使用新的实例标识符,因此,此选项将结束这些会话并返回一个错误。
ROLLBACK IMMEDIATE将立即回滚未完成的事务。

转自:https://www.cnblogs.com/12jh23/p/7526896.html

原文地址:https://www.cnblogs.com/wqaz123/p/10478535.html

时间: 2024-11-01 20:11:00

当前数据库未启用Service broker的相关文章

未启用当前数据库的 SQL Server Service Broker,因此查询通知不受支持。如果希望使用通知,请为此数据库启用 Service Broker

昨晚遇到的这个问题,也知道Notifications service依赖底层的Service broker的.本以为只需要执行以下脚本对数据库启用Service broker即可. alter database DBNAME set enable_broker 但是,执行后,脚本一直处于执行状态,不以为然,正好在忙其它事情就没有查看运行结果,结果到今早一看,居然运行还没有结束.虽然是在一个生产数据库上执行的,数据库也只有30G的样子,但也不至于执行一个晚上也未结束,只好终止执行,使用 SELEC

未启用当前数据库的 SQL Server Service Broker,请为此数据库启用 Service Broker

未启用当前数据库的 SQL Server Service Broker,因此查询通知不受支持.如果希望使用通知,请为此数据库启用 Service Broker, 我执行了下面语句解决了问题 ALTER DATABASE [数据库名称] SET NEW_BROKER WITH ROLLBACK IMMEDIATE;ALTER DATABASE [数据库名称] SET ENABLE_BROKER; 未启用当前数据库的 SQL Server Service Broker,请为此数据库启用 Servic

在Windows Server 2008 R2 Server中,连接其他服务器的数据库遇到“未启用当前数据库的 SQL Server Service Broker,因此查询通知不受支持。如果希望使用通知,请为此数据库启用 Service Broker ”

项目代码和数据库部署在不同的Windows Server 2008 R2 Server中,错误日志显示如下: "未启用当前数据库的 SQL Server Service Broker,因此查询通知不受支持.如果希望使用通知,请为此数据库启用 Service Broker." SQL Server Service Broker介绍: SQL Server Service Broker 为消息和队列应用程序提供 SQL Server 数据库引擎本机支持.这使开发人员可以轻松地创建使用数据库

错误:未启用当前数据库的SQL Server Service Broker,因此查询通知不受支持。如果希望使用通知,请为此数据库启用 Service Broker。

解决方法: 打开SQL Server,新建查询: ALTER DATABASE 数据库名 SET NEW_BROKER WITH ROLLBACK IMMEDIATE;ALTER DATABASE 数据库名 SET ENABLE_BROKER; 转自:http://www.cnblogs.com/Impulse/articles/5358379.html

sql server 启用数据库的 Service Broker

使用SqlDependency时要开启Service Broker ,那么SqlDependency是什么 https://www.cnblogs.com/zhaoyihao/p/5663258.html 如何启用 Service Broker: --is_broker_enabled为0未启用,为1启用 SELECT name,is_broker_enabled FROM sys.databases WHERE name = 'DBNAME' ALTER DATABASE DbName SET

sql server Service Broker 相关查询

-- 查看传输队列中的消息 --如果尝试从队列中移除时,列将表明哪里出现了问题 select * from sys.transmission_queue -- 查看Service Broker 激活的存储过程 select * from sys.dm_broker_activated_tasks -- 查看数据库中的每个会话端点.会话端点代表Service Broker 会话的每一端. -- 会话端点视图state列显示会话的状态 select * from sys.conversation_e

BizTalk 开发系列(四十) BizTalk WCF-SQL Adapter读取SQL Service Broker消息

SQL Service Broker 是在SQL Server 2005中新增的功能.Service Broker 为 SQL Server 提供队列和可靠的消息传递,可以可用来建立以异步消息为基础的应用.当然从题目大家可能也看出来了.我们本文主要不是为了讲SQL Service Broker(SSB),而是讲一下如何使用BizTalk WCF-SQL Adapter来访问SSB的数据. SQL Service Broker(SSB) 为要便于大家更好的接下来的示例,我们还是概况的讲一下SSB的

启用数据库的 Service Broker

--is_broker_enabled为0未启用,为1启用SELECT name,is_broker_enabled FROM sys.databases WHERE name = 'DBNAME' ALTER DATABASE DbName SET NEW_BROKER WITH ROLLBACK IMMEDIATE;ALTER DATABASE DbName SET ENABLE_BROKER;

SqlServer service broker 分布式系统(赵松涛)深入浅出 2005 数据库编程

1.创建测试数据库 create database ServerbrokerTest on primary( name=ServerbrokerTest_data, filename='C:\Program Files\Microsoft SQL Server\MSSQL11.SQLEXPRESS\MSSQL\DATA\ServerbrokerTest_data.mdf', size=5, maxsize=unlimited, filegrowth=1 ) Log on ( name=stude