Sdílet prostřednictvím


Konfigurace serveru: Limit nákladů správce dotazů

platí pro:SQL Server

Tento článek popisuje, jak nakonfigurovat query governor cost limit možnost konfigurace serveru v SQL Serveru pomocí aplikace SQL Server Management Studio nebo Transact-SQL. Možnost limitu nákladů určuje horní limit odhadovaných nákladů povolených pro spuštění daného dotazu. Náklady na dotazy jsou abstraktní obrázek určený optimalizátorem dotazů na základě odhadovaných požadavků na spuštění, jako je čas procesoru, paměť a vstupně-výstupní operace disku. Odkazuje na odhadovaný uplynulý čas v sekundách, který by byl nutný k dokončení dotazu na konkrétní konfiguraci hardwaru. Tento abstraktní obrázek se neshoduje s časem potřebným k dokončení dotazu na spuštěnou instanci. Měla by být považována za relativní míru. Výchozí hodnota této možnosti je 0, která nastaví správce dotazu na vypnuto. Nastavení hodnoty tak, aby 0 se všechny dotazy spouštěly bez omezení času. Pokud zadáte nenulovou, nenulovou hodnotu, správce dotazu zakáže spuštění jakéhokoli dotazu, který má odhadované náklady, které tuto hodnotu překročí.

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.

Pokud chcete změnit limit nákladů správce dotazů na hodnotu na základě připojení, použijte příkaz SET QUERY_GOVERNOR_COST_LIMIT .

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 stránku Připojení .

  3. Zaškrtnutím nebo zrušením zaškrtnutí políčka Použít správce dotazů zabráníte dlouhotrvajícím dotazům .

    Pokud toto políčko zaškrtnete, zadejte do následujícího pole kladnou hodnotu, kterou správce dotazu použije k zakázání provádění jakéhokoli dotazu s odhadovanými náklady přesahujícími tuto hodnotu.

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 governor cost limit možnosti na odhadovaný horní limit 120nákladů dotazu .

    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
    

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

Zpracovat: Po nakonfigurování možnosti limitu nákladů správce dotazů

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