Hello,
En écrivant quelques requêtes pour auditer le cache, je suis tombé sur un problème où j'ai besoin de votre lumière.
Résultat
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 SELECT COUNT(*) AS [Nb_Total_Plans] ,SUM(c.size_in_bytes)/(1024*1024) AS [Total_Cache_Size_Mo] FROM sys.dm_exec_cached_plans c CROSS APPLY sys.dm_exec_sql_text(plan_handle) s
-----------
Nb_Total_Plans ................ Total_Cache_Size_Mo
2255 ................................ 180
Résultat
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 SELECT COUNT(*) AS [Nb_Total_Plans] ,SUM(c.size_in_bytes)/(1024*1024) AS [Total_Cache_Size_Mo] FROM sys.dm_exec_cached_plans c
-----------
Le BOL dit ceci concernant le plan_handle :Nb_Total_Plans ................ Total_Cache_Size_Mo
2262 ................................ 175
Comment expliquer cette différence ? Qu'est ce qui est plus logique pour afficher le nombre total de plans dans le cache de procédures et la taille de mémoire mobilisée ?Identificateur du plan en mémoire. Cet identificateur est transitoire et il reste constant uniquement pendant que le plan est dans le cache.
Détails des requêtes en préparation
Merci de m'éclairer
Partager