I am optimizing a query and am worried that SQL Server is caching execution plans so want to wipe them.
How do I do this?
I am optimizing a query and am worried that SQL Server is caching execution plans so want to wipe them.
How do I do this?
You should do this: DBCC FREEPROCCACHE;
I also do this DBCC DROPCLEANBUFFERS;
Use DBCC DROPCLEANBUFFERS to test queries with a cold buffer cache without shutting down and restarting the server.
To drop clean buffers from the buffer pool, first use CHECKPOINT to produce a cold buffer cache. This forces all dirty pages for the current database to be written to disk and cleans the buffers. After you do this, you can issue DBCC DROPCLEANBUFFERS command to remove all buffers from the buffer pool.
You'll want to use DBCC FREEPROCCACHE
Removes all elements from the plan cache, removes a specific plan from the plan cache by specifying a plan handle or SQL handle, or removes all cache entries associated with a specified resource pool.