Bonjour,
Voilà je suis assez novice dans l'utilisation de SQL server.
Je travaille sur une base lié à notre logiciel de production, donc je n'ai pas la main sur tout.
Afin d'améliorer les performances de nos requêtes, j’exécute régulièrement cette requête :
ce qui me permet de rechercher la liste des index manquant.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 SELECT 'CREATE INDEX [missing_index] ON ' + mid.statement + '(' + ISNULL(mid.equality_columns, '') + CASE WHEN mid.equality_columns IS NOT NULL AND mid.inequality_columns IS NOT NULL THEN ', ' ELSE '' END + ISNULL(mid.inequality_columns, '') + ')' + ISNULL(' INCLUDE (' + mid.included_columns + ')', '') AS create_index_statement ,mid.statement , migs.* , mid.database_id , mid.[object_id] FROM sys.dm_db_missing_index_groups mig INNER JOIN sys.dm_db_missing_index_group_stats migs ON migs.group_handle = mig.index_group_handle INNER JOIN sys.dm_db_missing_index_details mid ON mig.index_handle = mid.index_handle INNER JOIN sys.objects sysobj ON sysobj.object_id = mid.[object_id]
Je les analyse un peut puis je met en place les index maquant.
Mais très régulièrement j'ai des index indiqués comme manquant hors ceci sont bien présent.
Est-ce que quelqu'un à déjà rencontré ce genre de problèmes?
Est-ce que j'oublie de faire quelque chose?
merci d'avance pour vos suggestions.
Partager