Sdílet prostřednictvím


Konfigurace serveru: Čekání dotazu

platí pro:SQL Server

Tento článek popisuje, jak nakonfigurovat možnost konfigurace serveru čekání dotazu v SQL Serveru pomocí aplikace SQL Server Management Studio nebo Transact-SQL. Dotazy náročné na paměť (například dotazy zahrnující řazení a hash) se zařadí do fronty, pokud není k dispozici dostatek paměti ke spuštění dotazu. Možnost čekání dotazu určuje čas v sekundách (od 0 do 2 147 483 647), které dotaz čeká na prostředky, než vyprší časový limit. Výchozí hodnota této možnosti je -1. To znamená, že časový limit se vypočítá 25krát odhadované náklady na dotazy.

Důležité

Transakce, která obsahuje čekající dotaz, může obsahovat zámky, zatímco dotaz čeká na paměť. Ve výjimečných situacích může dojít k nedetekovatelnému vzájemnému zablokování. Snížení doby čekání dotazu snižuje pravděpodobnost takových zablokování. Nakonec se ukončí čekající dotaz a transakce se uvolní. Zvýšení maximální doby čekání ale může zvýšit dobu, po kterou se má dotaz ukončit. Změny této možnosti se nedoporučují.

Recommendations

Tato možnost je pokročilá a měla by být změněna pouze zkušeným odborníkem na databázi.

Povolení

Ve výchozím nastavení se všem uživatelům udělí oprávnění sp_configure bez parametrů nebo pouze s prvním parametrem. Pokud chcete provést sp_configure oba parametry, aby se změnila možnost konfigurace nebo aby příkaz spustil RECONFIGURE , musí být uživateli uděleno ALTER SETTINGS oprávnění na úrovni serveru. Oprávnění ALTER SETTINGS se implicitně uchovává rolemi serveru sysadmin a serveradmin .

Použití aplikace SQL Server Management Studio

  1. V Průzkumníku objektů klikněte pravým tlačítkem na server a vyberte Vlastnosti.

  2. Vyberte uzel Upřesnit .

  3. V části Paralelismus zadejte požadovanou hodnotu pro možnost čekání dotazu .

Použijte Transact-SQL

  1. Připojte se k databázovému stroji.

  2. Na panelu Standard vyberte Nový dotaz.

  3. Zkopírujte a vložte následující příklad do okna dotazu a vyberte Spustit. Tento příklad ukazuje, jak pomocí sp_configure nastavit hodnotu query wait možnosti na 7500 sekundy.

    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
    

Další informace naleznete v tématu Možnosti konfigurace serveru.

Zpracovat: Po nakonfigurování možnosti čekání dotazu

Nastavení se projeví okamžitě bez restartování serveru.