Configuration du serveur : limite de coût du gouverneur de requête
S'applique à : SQL Server
Cet article explique comment configurer l’option de configuration du query governor cost limit
serveur dans SQL Server à l’aide de SQL Server Management Studio ou de Transact-SQL. L’option de limite de coût spécifie la limite supérieure du coût estimé autorisé pour l’exécution d’une requête donnée. Le coût de la requête est une figure abstraite déterminée par l’optimiseur de requête en fonction des besoins d’exécution estimés, tels que le temps processeur, la mémoire et les E/S de disque. Elle correspond à la durée estimée, en secondes, nécessaire à l'exécution complète d'une requête dans une configuration matérielle donnée. Cette figure abstraite ne correspond pas au temps nécessaire pour terminer une requête sur l’instance en cours d’exécution. Elle doit être traitée comme une mesure relative. La valeur par défaut de cette option est 0
, qui définit le gouverneur de requête sur désactivé. La définition de la valeur pour permettre à 0
toutes les requêtes de s’exécuter sans aucune limitation de temps. Si vous spécifiez une valeur positive et différente de zéro, l'Administrateur de requêtes n'autorise pas l'exécution de requêtes dont le coût estimé excède cette valeur.
Recommandations
Seul un administrateur de base de données qualifié ou un spécialiste agréé doit changer cette option avancée SQL Server.
Pour modifier la valeur de l’option Limite de coût de l’Administrateur de requêtes pour chaque connexion, utilisez l’instruction SET QUERY_GOVERNOR_COST_LIMIT .
autorisations
Les autorisations d’exécution de sp_configure
, sans paramètre ou avec le premier paramètre uniquement, sont accordées par défaut à tous les utilisateurs. Pour exécuter sp_configure
avec les deux paramètres afin de modifier une option de configuration ou pour exécuter l’instruction RECONFIGURE
, un utilisateur doit disposer de l’autorisation ALTER SETTINGS
au niveau du serveur. L’autorisation ALTER SETTINGS
est implicitement détenue par les rôles serveur fixes sysadmin et serveradmin.
Utiliser SQL Server Management Studio
Dans l’Explorateur d’objets, cliquez avec le bouton droit sur un serveur et sélectionnez Propriétés.
Sélectionnez la page Connexions .
Cochez ou décochez la case Utiliser l’Administrateur de requêtes pour empêcher les requêtes longues .
Si vous activez cette case à cocher, spécifiez dans la zone située ci-dessous une valeur positive, que l'Administrateur de requêtes utilise pour interdire l'exécution de toutes les requêtes dont le coût estimé dépasse cette valeur.
Utiliser Transact-SQL
Connectez-vous au Moteur de base de données.
Dans la barre d’outils standard, sélectionnez Nouvelle requête.
Copiez et collez l’exemple suivant dans la fenêtre de requête, puis sélectionnez Exécuter. Cet exemple montre comment utiliser sp_configure pour définir la valeur de l’option
query governor cost limit
sur une limite supérieure estimée du coût de requête de120
.USE master; GO EXECUTE sp_configure 'show advanced options', 1; GO RECONFIGURE; GO EXECUTE sp_configure 'query governor cost limit', 120; GO RECONFIGURE; GO EXECUTE sp_configure 'show advanced options', 0; GO RECONFIGURE; GO
Pour plus d’informations, consultez l’article Options de configuration du serveur.
Suivi : après avoir configuré l’option limite des coûts du gouverneur de requête
Le paramètre prend effet immédiatement sans redémarrage du serveur.