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_endpoints -----------------------------------------------------------------------
--查看活动队列
SELECT * FROM <queue name> WITH (NOLOCK) --查找数据库的service_broker_guid
SELECT service_broker_guid
FROM sys.databases
WHERE database_id = DB_ID() ; --清除无法正常完成的会话
END CONVERSATION @dialog_handle WITH CLEANUP ; -- 指定数据库应接收新的Broker 标识符。由于该数据库被视为新的Service Broker,所以将立即删除数据库中的所有现有会话,而不生成结束对话框消息。
alter database guoqiang set NEW_BROKER -------------------------------------------------------------------------
-- 查看每个Service Broker 网络链接
select * from sys.dm_broker_connections -- 查看实例中的每个队列监视器,队列监视器负责管理队列的激活。
select * from sys.dm_broker_queue_monitors -- 查看针对每个Service Broker 消息都返回一行,此消息表示SQL Server 实例正在转发中。
select * from sys.dm_broker_forwarded_messages -- 指定数据库应接收新的Broker 标识符。由于该数据库被视为新的Service Broker,所以将立即删除数据库中的所有现有会话,而不生成结束对话框消息。
alter database guoqiang set NEW_BROKER -- 指定对指定的数据库启用Service Broker
alter database guoqiang set ENABLE_BROKER --指定为指定数据库禁用Service Broker
alter database guoqiang set DISABLE_BROKER ----------------------------------------------
-- 消息类型视图
select * from sys.service_message_types --系统中的约定视图
select * from sys.service_contracts -- 路由视图
select * from sys.routes --队列是一种属于架构的对象。队列显示在目录视图
select * from sys.objects --服务视图
select * from sys.services --消息和约定的关系视图
select * from sys.service_contract_message_usages -- 查看消息类型列表、它们使用的约定
SELECT C.name AS Contract, M.name AS MessageType,
CASE
WHEN is_sent_by_initiator = 1
AND is_sent_by_target = 1 THEN 'ANY'
WHEN is_sent_by_initiator = 1 THEN 'INITIATOR'
WHEN is_sent_by_target = 1 THEN 'TARGET'
END AS SentBy
FROM sys.service_message_types AS M
JOIN sys.service_contract_message_usages AS U
ON M.message_type_id = U.message_type_id
JOIN sys.service_contracts AS C
ON C.service_contract_id = U.service_contract_id
ORDER BY C.name, M.name; --查看队列使用的内部表的名称
SELECT Q.name AS QueueName, I.name AS InternalName
FROM sys.service_queues AS Q
JOIN sys.internal_tables AS I
ON Q.object_id = I.parent_object_id; --查看服务和队列
SELECT S.name, Q.name
FROM sys.services AS S
JOIN sys.service_queues AS Q
ON S.service_queue_id = Q.object_id; ----服务和约定的映射关系
sys.service_contract_usages SELECT S.name AS [Service], Q.name AS [Queue], C.name AS [Contract]
FROM sys.services AS S
JOIN sys.service_queues AS Q
ON S.service_queue_id = Q.object_id
JOIN sys.service_contract_usages AS U
ON S.service_id = U.service_id
JOIN sys.service_contracts AS C
ON U.service_contract_id = C.service_contract_id; --清除处于错误状态的会话
DECLARE @handle AS UNIQUEIDENTIFIER;
DECLARE conv CURSOR FOR
SELECT conversation_handle
FROM sys.conversation_endpoints
WHERE state = 'ER';
OPEN conv;
FETCH NEXT FROM conv INTO @handle;
WHILE @@FETCH_STATUS = 0
BEGIN
END Conversation @handle WITH CLEANUP;
FETCH NEXT FROM conv INTO @handle;
END
CLOSE conv;
DEALLOCATE conv; SELECT * FROM sys.transmission_queue SELECT * FROM sys.conversation_endpoints ORDER BY security_timestamp DESC
SELECT * FROM sys.service_queue_usages
SELECT * FROM sys.dm_broker_connections
SELECT * FROM sys.dm_broker_activated_tasks
SELECT * FROM sys.dm_broker_queue_monitors SELECT * FROM sys.dm_os_performance_counters
SELECT * FROM sys.dm_os_performance_counters WHERE object_name='SQLServer:Broker Statistics'
SELECT * FROM sys.dm_os_performance_counters WHERE object_name='SQLServer:Broker/DBM Transport'
SELECT * FROM sys.dm_os_performance_counters WHERE object_name='SQLServer:Broker Activation'
SELECT * FROM sys.dm_os_performance_counters WHERE object_name='SQLServer:Broker TO Statistics'

sql server Service Broker 相关查询的更多相关文章

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

    项目代码和数据库部署在不同的Windows Server 2008 R2 Server中,错误日志显示如下: "未启用当前数据库的 SQL Server Service Broker,因此查 ...

  2. The SQL Server Service Broker for the current database is not enabled

    把一个数据恢复至另一个服务器上,出现了一个异常: The SQL Server Service Broker for the current database is not enabled, and ...

  3. SQL Server Service Broker创建单个数据库会话

    概述 SQL Server Service Broker 用来创建用于交换消息的会话.消息在目标和发起方这两个端点之间进行交换.消息用于传输数据和触发消息收到时的处理过程.目标和发起方既可以在同一数据 ...

  4. SQL Server Service Broker创建单个数据库会话(消息队列)

    概述 SQL Server Service Broker 用来创建用于交换消息的会话.消息在目标和发起方这两个端点之间进行交换.消息用于传输数据和触发消息收到时的处理过程.目标和发起方既可以在同一数据 ...

  5. SQL Server Service Broker(简称SSB)资料

    SQL server Service Broker (下面简称SSB) 是SQL server 里面比较独特的一个功能.它可帮助开发人员构建异步的松散耦合应用程序.SSB的一些功能和好处包括有: 数据 ...

  6. SQL问题:未启用当前数据库的 SQL Server Service Broker

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

  7. SQL Server Service Broker 简单例子 (转)

    SQL Server Service Broker服务体系结构 消息类型 — 定义应用程序间交换的消息的名称.还可以选择是否验证消息.约定 — 指定给定会话中的消息方向和消息类型.队列 — 存储消息. ...

  8. Reusing dialogs with a dialog pool--一个sql server service broker例子

    一个sql server service broker例子 ----------------------------------- USE master GO -------------------- ...

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

    昨晚遇到的这个问题,也知道Notifications service依赖底层的Service broker的.本以为只需要执行以下脚本对数据库启用Service broker即可. alter dat ...

随机推荐

  1. 新浪微博API的使用Python

    本文记录了用新浪微博官方Python SDK调用API进行开发的流程. 准备工作 申请成为开发者并创建一个应用: 首先要有一个新浪微博的账号,然后去新浪微博开放平台(http://open.weibo ...

  2. [转]android中OnTouch和OnClick、 imagebutton的src和background有什么区别

    1.OnTouch和OnClick有何区别?   专业回答 1.onClick就传入一个View对象,而 onTouch要传入一个View 对象和 MotionEvent的对象2.onTouch对控件 ...

  3. BZOJ 2818: Gcd 筛法

    2818: Gcd 题目连接: http://www.lydsy.com/JudgeOnline/problem.php?id=2818 Description 给定整数N,求1<=x,y< ...

  4. hdu 5204 Rikka with sequence 智商不够系列

    Rikka with sequence Time Limit: 1 Sec  Memory Limit: 256 MB 题目连接 http://acm.hdu.edu.cn/showproblem.p ...

  5. BZOJ 2243: [SDOI2011]染色 树链剖分 倍增lca 线段树

    2243: [SDOI2011]染色 Time Limit: 20 Sec  Memory Limit: 256 MB 题目连接 http://www.lydsy.com/JudgeOnline/pr ...

  6. 读书笔记_Effective_C++_条款二十八:避免返回handlers指向对象内部成分

    举个例子: class Student { private: int ID; string name; public: string& GetName() { return name; } } ...

  7. 一个iframe注入漏洞,也是微软的 Application["error"] 漏洞

    最近学校进行安全等级评估,有人给我打电话,说我之前写的一个网站存在iframe注入漏洞,页面是error页面.我于是用netsparker扫描了自己的网站,果然发现error页面存在漏洞,我写网站的时 ...

  8. 通过手机音频口,实现与单片机通讯,做电子签名成功n

    手机端的Ukey便携产品, 可以管理证书.加密解密.电子签名 : 1.通讯稳定,生成签名成功率100% 2.证书固化,私钥安全 3.走手机音频接口,通用.跨平台 4.耗电少,自带电池可长期供电,且可充 ...

  9. PHP格式化金钱函数

    实现目的: 对数字进行格式化,以类似¥10,000,000的格式输出. 实现方法: function doFormatMoney($money){ $tmp_money = strrev($money ...

  10. linux中的dup()系统调用

    参考1:http://www.blogjava.net/lihao336/archive/2011/12/13/366231.html 在linux纷繁复杂的内核代码中,sys_dup()的代码也许称 ...