SQL Server Service Broker清空conversation释放TempDB空间

如果你的数据库启用了Service Broker后发现TempDB的size一直在增加,此时可以考虑是否在call service的时候没有结束conversation。

具体怎么结束conversation可以参考另一篇。SQL Server Service Broker启用详解以及常见问题

此文章主要用于清理遗留的conversation去释放TempDB的空间。

脚本如下:

'AuditTrailService'--改成你自己的service名称(可以在你的DB -> Service Broker -> Services )

sql 复制代码
--End conversation for AuditTrailSyncQueue
declare @ServiceBroker_ServiceName nvarchar(255)='AuditTrailService'--改成你自己的service名称(可以在你的DB -> Service Broker -> Services )
DECLARE @conversationHandle UNIQUEIDENTIFIER;

WHILE (1 = 1)
BEGIN
select TOP 1 @conversationHandle= ce.conversation_handle
from 
sys.conversation_endpoints ce 
left join sys.services ss on ce.service_id=ss.service_id
where state_desc='CONVERSING' and ce.far_service=@ServiceBroker_ServiceName

IF (@@ROWCOUNT = 0)
BREAK;

END CONVERSATION @conversationHandle WITH CLEANUP;
END;
相关推荐
杨云龙UP11 天前
【MySQL迁移】MySQL数据库迁移实战(利用mysqldump从Windows 5.7迁至Linux 8.0)
linux·运维·数据库·mysql·mssql
wangzhpwang5 个月前
Sqlalchemy 连mssql坑
mssql
wangzhpwang6 个月前
Adminer 连接mssql sqlserver
mysql·sqlserver·php·dba·mssql
luckyext6 个月前
SQL SERVER常用聚合函数整理及示例
运维·服务器·数据库·sql·mysql·sqlserver·mssql
luckyext6 个月前
SQL的RAND用法和指定生成随机数的范围
运维·服务器·数据库·sql·sqlserver·运维开发·mssql
ALe要立志成为web糕手7 个月前
数据库脱裤
数据库·windows·mysql·web安全·网络安全·adb·mssql
Tdm_8887 个月前
SQL Server中OPENJSON + WITH 来解析JSON
java·数据库·sql·c#·json·mssql
luckyext8 个月前
SQLServer列转行操作及union all用法
运维·数据库·后端·sql·sqlserver·运维开发·mssql
PawSQL8 个月前
PawSQL for MSSQL:PawSQL 支持 SQL Server 的SQL优化、SQL审核、性能巡检
sql·sqlserver·sql优化·mssql·pawsql