Início > SQL Server > Como remover um Plano de execução do CachePlan

Como remover um Plano de execução do CachePlan

Pessoal depois de alguns bons dias de férias, volto com uma dica bem legal que li.

Para limpar o PlanCache de uma instância SQL utilizamos o DBCC FREEPROCCACHE, para limpar o cache de apenas um banco específico utilizamos o DBCC FLUSHPROCINDB (<DBID_DO_BANCO>). Mas fica uma pergunta, tem alguma forma de limpar o cache de apenas um determinado comando?

Sim. Podemos utilizar o DBCC FREEPROCCACHE passando o [sys.dm_exec_cached_plans].PlanHandle, por ex:

SELECT cp.plan_handle, st.[text]
FROM sys.dm_exec_cached_plans AS cp
CROSS APPLY sys.dm_exec_sql_text(plan_handle) AS st

O comando acima retorna o PlanHandle dos planos, depois e só passar ele como parâmetro para o FREEPROCCACHE

DBCC FREEPROCCACHE(0x06000500AF643E18B840C234000000000000000000000000)

Créditos para o GlennBerry.

Abraços

Anúncios
Categorias:SQL Server
  1. Laerte
    5 de janeiro de 2010 às 16:53

    Excelente Fabiano !!!!!

  2. Gustavo
    5 de janeiro de 2010 às 23:27

    Oi Fabiano,Como sempre, no assunto plano de execução, tuning e afins suas postagens são surpreendentes. Já tive necessidade de fazer isso algumas vezes e acabei por eliminar tudo, pois, não sabia que dava para eliminar um só.Abs,

  3. Anibal Guillermo
    6 de janeiro de 2010 às 4:36

    Gran aporte , para inicio de Año , es posible definir el tiempo de vida que un plan de ejecucion se requiere tener en el cache ?

  4. Fabiano Neves
    6 de janeiro de 2010 às 15:04

    Grande Gustavo, valeu…Anibal, ustedes puedes mirar la tabla sys.dm_exec_query_stats, SELECT t.text, qs.creation_time, qs.last_execution_timeFROM sys.dm_exec_query_stats qsCROSS APPLY sys.dm_exec_sql_text(qs.plan_handle) tWHERE t.text LIKE \’%Comando%\’

  5. Fabiano Neves
    6 de janeiro de 2010 às 16:16

    E ai Laerte, Valeu cara… valeu tbm pela indicação no seu Blog.Abraço

  1. No trackbacks yet.

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s

%d blogueiros gostam disto: