Partager via


Configuration du serveur : Attente de la requête

S'applique à :SQL Server

Cet article décrit comment configurer l’option de configuration du serveur query wait dans SQL Server à l’aide de SQL Server Management Studio ou de Transact-SQL. Les requêtes gourmandes en mémoire (telles que celles qui impliquent des opérations de tri et de hachage) sont mises en attente si la quantité de mémoire est insuffisante pour leur exécution. L’option query wait spécifie le délai (exprimé en secondes, de 0 à 2,147,483,647) pendant lequel une requête peut attendre des ressources avant d’expirer. La valeur par défaut de cette option est -1. Cela signifie que le délai d'attente est calculé comme étant 25 fois le coût estimé de la requête.

Important

Une transaction contenant la requête en attente peut contenir des verrous en attendant une quantité supplémentaire de mémoire. Dans de rares cas, il est possible qu’un blocage indétectable se produise. En réduisant la durée d’attente de la requête, vous réduisez également la probabilité de déclenchement de ces verrous. À la fin de celle-ci, une requête en attente est arrêtée et les verrous de la transaction sont libérés. Toutefois, l’augmentation du délai d’attente maximal risque d’augmenter le temps nécessaire à l’achèvement de la requête. Nous ne recommandons pas de modifier cette option.

Recommandations

Cette option est une option avancée et doit être modifiée uniquement par un professionnel de base de données expérimenté.

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

  1. Dans l’Explorateur d’objets, cliquez avec le bouton droit sur un serveur et sélectionnez Propriétés.

  2. Cliquez sur le nœud Avancé.

  3. Sous Parallélisme, tapez la valeur de votre choix pour l'option query wait .

Utiliser Transact-SQL

  1. Connectez-vous au Moteur de base de données.

  2. Dans la barre d’outils standard, sélectionnez Nouvelle requête.

  3. 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 attribuer à l’option query wait la valeur 7500 secondes.

    USE master;
    GO
    
    EXECUTE sp_configure 'show advanced options', 1;
    GO
    
    RECONFIGURE;
    GO
    
    EXECUTE sp_configure 'query wait', 7500;
    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 query wait

Le paramètre prend effet immédiatement sans redémarrage du serveur.