星期三, 8月 29, 2018

[SQL] 清除指定執行計劃快取

在測試環境常常下 DBCC FREEPROCCACHE 來清除執行計畫,發現 DBCC FREEPROCCACHE 可以輸入 plan_handle 為參數來清除指定執行計畫,並不是一定都要清除全部

執行 TSQL 語法並透過 DMV 找出該執行計畫的 plan_handle
USE AdventrueWorks2016
GO

SELECT * FROM Person.Person
GO

SELECT
  cap.plan_handle ,
  cap.usecounts ,
  cap.cacheobjtype ,
  cap.objtype ,
  st.text
FROM sys.dm_exec_cached_plans AS cap
  CROSS APPLY sys.dm_exec_sql_text(cap.plan_handle) AS st
WHERE st.text NOT LIKE '%sys%'
  AND st.text LIKE N'SELECT * FROM Person.Person%'
GO

[SQL] 清除指定執行計劃快取

清除指定執行計畫
DBCC FREEPROCCACHE(0x06000900FB17592A9082C9015102000001000000000000000000000000000000000000000000000000000000)

沒有留言:

張貼留言