optimize for ad hoc workloads

--1.查看执行计划重用次数和占用空间 
SELECT cp.usecounts,cp.cacheobjtype,cp.objtype,st.text,qp.query_plan,cp.size_in_bytes       
FROM sys.dm_EXEC_cached_plans cp
cross apply sys.dm_EXEC_sql_text(plan_handle) st
cross apply sys.dm_EXEC_query_plan(plan_handle) qp

--2.查看是否开启即席查询
SELECT * FROM sys.configurations WHERE name='optimize for ad hoc workloads'

--3.开启
EXEC sp_configure 'show advanced options',1 
reconfigure 
EXEC sp_configure 'optimize for ad hoc workloads',1
reconfigure 
EXEC sp_configure 'show advanced options',0 
reconfigure 

--4.将只使用一次的缓存计划清除
declare @sid varbinary(64)
declare cur cursor for
SELECT  plan_handle FROM 
(
	SELECT  plan_handle  
		FROM sys.dm_EXEC_cached_plans AS cp 
			WHERE cp.cacheobjtype = N'Compiled Plan'
			AND cp.objtype IN (N'Adhoc', N'Prepared')
			AND cp.usecounts =1 
) c

open cur
fetch next FROM cur into @sid
while @@fetch_status=0
begin
	DBCC FREEPROCCACHE(@sid)
fetch next FROM cur into @sid
end
close cur
deallocate cur

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值