Slow queries dans SQL Server : méthodes et outils

shape
shape
shape
shape
shape
shape
shape
shape

On a un beau MCD, on a fait nos migrations, l’appli est developpée, mais la catastrophe… ça rame !
Je vais vous donner quelques pistes pour traquer les requêtes qui demandent à être revues et/ou optimisées.

L’activity monitor

Premier outil auquel il faut penser, pour aller au plus rapide, c’est l’activity monitor qui est installé avec SSMS (SQL Server Management Studio).

Avec celui-ci vous pouvez suivre les différentes activités de votre instance SQL Server.

Activity monitor

Premier point, regarder les process qui peuvent être en attente ou bloqués (Onglet « Processes »). Avec un clic droit dessus, vous pourrez accéder au détail; Regarder bien les colonnes « Wait resource » et « Blocked By ».

Plus de détails ici : https://www.sqlshack.com/sql-server-activity-monitor/

Le query store

Outil indispensable pour chaque DBA (ou developpeur) pour traquer ces fameuses slow queries.

Vous devez déjà l’activer (par base de données), car par défaut il devrait être désactivé. Pour vérifier son état :

SELECT * FROM sys.database_query_store_options

Etat du query store

S’il est désactivé, allez dans les propriétés de la base de données et passez l’operation mode de la page « query store » à « read write » :

Le query store

Plus de détails sur son utilisation ici : https://docs.microsoft.com/en-us/sql/relational-databases/performance/monitoring-performance-by-using-the-query-store

Le Database Engine Tuning Advisor

Le database engine tuning advisor

[à venir]

Le SQL Server Profiler

Dernier outil qui peut vous permettre d’identifier ces fameuses requêtes lentes, c’est le SQL Server Profiler qui vient aussi avec SSMS.

N’hésitez pas à jouer avec les filtres afin de le rendre un peu moins verbeux !

SQL Server profiler

Un exemple d’utilisation : https://kerrubin.wordpress.com/2013/11/12/sql-server-profiler/

Divers

N’oubliez pas quelques outils pour booster les performances de vos bases :

SQL Index Manager : voir l’article sur ce blog