ALTER DATABASE SCOPED CONFIGURATION (Transact-SQL)
platí pro: SQL Server 2016 (13.x) a novější verze
Azure SQL Database
azure SQL Managed Instance
databáze Azure Synapse Analytics
SQL v Microsoft Fabric
Tento příkaz umožňuje několik nastavení konfigurace databáze na úrovni jednotlivé databáze.
Důležitý
Různé možnosti DATABASE SCOPED CONFIGURATION
se podporují v různých verzích SQL Serveru nebo služeb Azure. Tato stránka popisuje všechny možnostiDATABASE SCOPED CONFIGURATION
. Jsou zaznamenány verze, kde je to možné. Ujistěte se, že používáte syntaxi dostupnou ve verzi služby, kterou používáte.
V Azure SQL Database, databázi SQL v Microsoft Fabric, Azure SQL Managed Instance a SQL Serveru jsou podporovaná následující nastavení, jak je uvedeno v Platí pro řádek pro každé nastavení v části Argumenty:
- Vymazat mezipaměť procedur.
- Nastavte parametr MAXDOP na doporučenou hodnotu (1, 2, ...) pro primární databázi na základě toho, co je pro danou úlohu nejvhodnější, a nastavte jinou hodnotu pro databáze sekundární repliky používané dotazy generování sestav. Pokyny k volbě MAXDOP najdete v tématu konfigurace Serveru: maximální stupeň paralelismu.
- Nastavte model odhadu kardinality optimalizátoru dotazů nezávisle na úrovni kompatibility databáze.
- Povolte nebo zakažte zarážky parametrů na úrovni databáze.
- Povolte nebo zakažte opravy hotfix pro optimalizaci dotazů na úrovni databáze.
- Povolte nebo zakažte mezipaměť identit na úrovni databáze.
- Povolte nebo zakažte zkompilovaný zástupný kód plánu, aby se při prvním zkompilování dávky ukládal do mezipaměti.
- Povolte nebo zakažte shromažďování statistik provádění pro nativně kompilované moduly Transact-SQL.
- Povolte nebo zakažte online ve výchozím nastavení pro příkazy DDL, které podporují syntaxi
ONLINE =
. - Povolte nebo zakažte výchozí možnosti pro příkazy DDL, které podporují syntaxi
RESUMABLE =
. - Povolte nebo zakažte funkce inteligentního zpracování dotazů
. - Povolení nebo zakázání zrychleného vynucení plánu
- Povolte nebo zakažte funkci automatického odstraňování globálních dočasných tabulek.
- Povolte nebo zakažte
odlehčené infrastruktury profilace dotazů . - Povolte nebo zakažte novou chybovou zprávu
String or binary data would be truncated
. - Povolte nebo zakažte kolekci posledního skutečného plánu provádění v sys.dm_exec_query_plan_stats.
- Zadejte počet minut, po které je pozastavená obnovitelná operace indexu pozastavena, než se automaticky přeruší databázový stroj.
- Povolte nebo zakažte čekání na zámky s nízkou prioritou pro asynchronní aktualizaci statistik.
- Povolte nebo zakažte odesílání přehledů registru do služby Azure Blob Storage.
Toto nastavení je dostupné jenom ve službě Azure Synapse Analytics.
- Nastavení úrovně kompatibility uživatelské databáze
Syntax
-- Syntax for SQL Server, Azure SQL Database and Azure SQL Managed Instance
ALTER DATABASE SCOPED CONFIGURATION
{
{ [ FOR SECONDARY] SET <set_options>}
}
| CLEAR PROCEDURE_CACHE [plan_handle]
| SET < set_options >
[;]
< set_options > ::=
{
MAXDOP = { <value> | PRIMARY}
| LEGACY_CARDINALITY_ESTIMATION = { ON | OFF | PRIMARY}
| PARAMETER_SNIFFING = { ON | OFF | PRIMARY}
| QUERY_OPTIMIZER_HOTFIXES = { ON | OFF | PRIMARY}
| IDENTITY_CACHE = { ON | OFF }
| INTERLEAVED_EXECUTION_TVF = { ON | OFF }
| BATCH_MODE_MEMORY_GRANT_FEEDBACK = { ON | OFF }
| BATCH_MODE_ADAPTIVE_JOINS = { ON | OFF }
| TSQL_SCALAR_UDF_INLINING = { ON | OFF }
| ELEVATE_ONLINE = { OFF | WHEN_SUPPORTED | FAIL_UNSUPPORTED }
| ELEVATE_RESUMABLE = { OFF | WHEN_SUPPORTED | FAIL_UNSUPPORTED }
| OPTIMIZE_FOR_AD_HOC_WORKLOADS = { ON | OFF }
| XTP_PROCEDURE_EXECUTION_STATISTICS = { ON | OFF }
| XTP_QUERY_EXECUTION_STATISTICS = { ON | OFF }
| ROW_MODE_MEMORY_GRANT_FEEDBACK = { ON | OFF }
| MEMORY_GRANT_FEEDBACK_PERCENTILE_GRANT = { ON | OFF }
| MEMORY_GRANT_FEEDBACK_PERSISTENCE = { ON | OFF }
| BATCH_MODE_ON_ROWSTORE = { ON | OFF }
| DEFERRED_COMPILATION_TV = { ON | OFF }
| ACCELERATED_PLAN_FORCING = { ON | OFF }
| GLOBAL_TEMPORARY_TABLE_AUTO_DROP = { ON | OFF }
| LIGHTWEIGHT_QUERY_PROFILING = { ON | OFF }
| VERBOSE_TRUNCATION_WARNINGS = { ON | OFF }
| LAST_QUERY_PLAN_STATS = { ON | OFF }
| PAUSED_RESUMABLE_INDEX_ABORT_DURATION_MINUTES = <time>
| ISOLATE_SECURITY_POLICY_CARDINALITY = { ON | OFF }
| EXEC_QUERY_STATS_FOR_SCALAR_FUNCTIONS = { ON | OFF }
| ASYNC_STATS_UPDATE_WAIT_AT_LOW_PRIORITY = { ON | OFF }
| OPTIMIZED_PLAN_FORCING = { ON | OFF }
| DOP_FEEDBACK = { ON | OFF }
| CE_FEEDBACK = { ON | OFF }
| PARAMETER_SENSITIVE_PLAN_OPTIMIZATION = { ON | OFF }
| LEDGER_DIGEST_STORAGE_ENDPOINT = { <endpoint URL string> | OFF }
| OPTIMIZED_SP_EXECUTESQL = { ON | OFF }
}
Důležitý
Počínaje SQL Serverem 2019 (15.x) ve službě Azure SQL Database a službou Azure SQL Managed Instance se změnily některé názvy možností:
-
DISABLE_INTERLEAVED_EXECUTION_TVF
změněno naINTERLEAVED_EXECUTION_TVF
-
DISABLE_BATCH_MODE_MEMORY_GRANT_FEEDBACK
změněno naBATCH_MODE_MEMORY_GRANT_FEEDBACK
-
DISABLE_BATCH_MODE_ADAPTIVE_JOINS
změněno naBATCH_MODE_ADAPTIVE_JOINS
-- Syntax for Azure Synapse Analytics
ALTER DATABASE SCOPED CONFIGURATION
{
SET <set_options>
}
[;]
< set_options > ::=
{
DW_COMPATIBILITY_LEVEL = { AUTO | 10 | 20 | 30 | 40 | 50 | 9000 }
}
Argumenty
PRO SEKUNDÁRNÍ
Určuje nastavení sekundárních databází (všechny sekundární databáze musí mít stejné hodnoty).
CLEAR PROCEDURE_CACHE [plan_handle]
Vymaže mezipaměť postupu (plánu) pro databázi a dá se spustit jak v primární, tak i v sekundárních.
Zadejte popisovač plánu dotazu, který vymaže jeden plán dotazu z mezipaměti plánu.
platí pro: Určení popisovače plánu dotazu je k dispozici od SQL Serveru 2019 (15.x), ve službě Azure SQL Database a ve službě Azure SQL Managed Instance.
MAXDOP = {<hodnota> | PRIMÁRNÍ }
<hodnota>
Určuje výchozí maximální stupeň paralelismu (MAXDOP) nastavení, které se má použít pro příkazy. 0 je výchozí hodnota a označuje, že se místo toho používá konfigurace serveru. MaxDOP v oboru databáze přepisuje (pokud není nastavena na hodnotu 0), maximální stupeň paralelismu nastaven na úrovni serveru sp_configure
. Nápovědy k dotazům můžou stále přepsat databázi s vymezeným oborem MAXDOP, aby se vyladily konkrétní dotazy, které potřebují jiné nastavení. Všechna tato nastavení jsou omezena nastavením MAXDOP pro skupinu úloh .
Pomocí možnosti MAXDOP můžete omezit počet procesorů, které se mají použít při paralelním provádění plánu. SQL Server považuje plány paralelního spouštění pro dotazy, operace jazyka DDL (Index Data Definition Language), paralelní vložení, online alter column, kolekci paralelních statistik a statickou populaci kurzorů řízenou sadou klíčů.
Poznámka
Maximální stupeň paralelismu (MAXDOP)
Pokud chcete tuto možnost nastavit na úrovni instance, přečtěte si téma Konfigurace maximálního stupně paralelismu Možnosti konfigurace serveru.
Poznámka
Ve službě Azure SQL Database je konfigurace s oborem databáze MAXDOP pro nové databáze s jedním a elastickým fondem ve výchozím nastavení nastavená na 8. MaxDOP lze nakonfigurovat pro každou databázi, jak je popsáno v aktuálním článku. Doporučení týkající se optimální konfigurace MAXDOP najdete v části Další zdroje informací.
Spropitné
Chcete-li toho dosáhnout na úrovni dotazu, použijte
Chcete-li toho dosáhnout na úrovni serveru, použijte maximální stupeň paralelismu (MAXDOP)možnost konfigurace serveru.
Chcete-li toho dosáhnout na úrovni úlohy, použijte možnost konfigurace skupiny úloh MAX_DOPSprávce prostředků.
PRIMÁRNÍ
Lze nastavit pouze pro sekundy, zatímco databáze v primární a označuje, že konfigurace je jedna sada pro primární. Pokud se konfigurace primárních změn změní, hodnota u sekundárních souborů se odpovídajícím způsobem změní, aniž by bylo nutné explicitně nastavit hodnotu sekundárních souborů. PRIMÁRNÍ je výchozím nastavením sekundárních souborů.
LEGACY_CARDINALITY_ESTIMATION = { ON | VYPNUTO | PRIMÁRNÍ }
Umožňuje nastavit model odhadu kardinality optimalizátoru dotazů na SQL Server 2012 a starší verzi nezávisle na úrovni kompatibility databáze. Výchozí hodnota je OFF
, která nastaví model odhadu kardinality optimalizátoru dotazů na základě úrovně kompatibility databáze. Nastavení LEGACY_CARDINALITY_ESTIMATION
na ON
je ekvivalentní povolení příznaku trasování 9481.
Spropitné
Chcete-li toho dosáhnout na úrovni dotazu, přidejte QUERYTRACEONnápovědu dotazu.
Počínaje SQL Serverem 2016 (13.x) SP1, abyste toho dosáhli na úrovni dotazu, přidejte místo příznaku trasování
PRIMÁRNÍ
Tato hodnota je platná pouze u sekundárních souborů, zatímco databáze v primárním serveru a určuje, že nastavení modelu odhadu kardinality optimalizátoru dotazů u všech sekundárních souborů je hodnota nastavená pro primární. Pokud se změní konfigurace na primárním serveru pro model odhadu kardinality optimalizátoru dotazů, změní se odpovídajícím způsobem hodnota u sekundárních hodnot. PRIMÁRNÍ je výchozím nastavením sekundárních souborů.
PARAMETER_SNIFFING = { ON | VYPNUTO | PRIMÁRNÍ }
Povolí nebo zakážeON
. Nastavení PARAMETER_SNIFFING
na OFF
je ekvivalentní povolení příznaku trasování 4136.
Spropitné
Chcete-li toho dosáhnout na úrovni dotazu, podívejte se na OPTIMIZE FOR UNKNOWN
nápovědu dotazu.
V SQL Serveru 2016 (13.x) SP1 a novějších verzích je k dispozici také USE HINT
nápovědy k dotazu.
PRIMÁRNÍ
Tato hodnota je platná pouze u sekundárních souborů, zatímco databáze v primárním serveru a určuje, že hodnota tohoto nastavení u všech sekundárních souborů je hodnota nastavená pro primární. Pokud se konfigurace na primárním serveru pro použití parametru změní, hodnota sekundárů se odpovídajícím způsobem změní bez nutnosti explicitně nastavit hodnotu sekundárních souborů. PRIMÁRNÍ je výchozí nastavení pro sekundární soubory.
QUERY_OPTIMIZER_HOTFIXES = { ON | VYPNUTO | PRIMÁRNÍ }
Povolí nebo zakáže opravy hotfix optimalizace dotazů bez ohledu na úroveň kompatibility databáze. Výchozí hodnota je OFF
, která zakáže opravy hotfix pro optimalizaci dotazů, které byly vydány po zavedení nejvyšší dostupné úrovně kompatibility pro konkrétní verzi (post-RTM). Nastavení na ON
je ekvivalentní povolení příznaku trasování 4199.
platí pro: SQL Server (počínaje SQL Serverem 2016 (13.x)), Azure SQL Database a Azure SQL Managed Instance
Spropitné
Chcete-li toho dosáhnout na úrovni dotazu, přidejte QUERYTRACEONnápovědu dotazu. Počínaje SQL Serverem 2016 (13.x) SP1 to můžete provést na úrovni dotazu tak, že místo příznaku trasování přidáte nápovědu k dotazu USE HINT .
PRIMÁRNÍ
Tato hodnota je platná pouze u sekundárních souborů, zatímco databáze v primárním serveru a určuje, že hodnota tohoto nastavení u všech sekundárních souborů je hodnota nastavená pro primární. Pokud se konfigurace primárních změn změní, hodnota u sekundárních souborů se odpovídajícím způsobem změní, aniž by bylo nutné explicitně nastavit hodnotu sekundárních souborů. PRIMÁRNÍ je výchozí nastavení pro sekundární soubory.
IDENTITY_CACHE = { ON | VYPNUTO }
platí pro: SQL Server (počínaje SQL Serverem 2017 (14.x)), Azure SQL Database a Azure SQL Managed Instance
Povolí nebo zakáže mezipaměť identit na úrovni databáze. Výchozí hodnota je ON
. Ukládání identit do mezipaměti se používá ke zlepšení výkonu INSERT u tabulek se sloupci identit. Pokud chcete zabránit mezerám v hodnotách sloupce identity v případech, kdy se server neočekávaně restartuje nebo převezme služby při selhání sekundárnímu serveru, zakažte možnost IDENTITY_CACHE
. Tato možnost se podobá existující příznaku trasování 272s tím rozdílem, že lze nastavit na úrovni databáze, nikoli pouze na úrovni serveru.
Poznámka
Tuto možnost lze nastavit pouze pro primární. Další informace najdete v tématu sloupce identit.
INTERLEAVED_EXECUTION_TVF = { ON | VYPNUTO }
platí pro: SQL Server (počínaje SQL Serverem 2019 (15.x)), Azure SQL Database a Azure SQL Managed Instance
Umožňuje povolit nebo zakázat prokládání spouštění pro funkce s více příkazy s hodnotami tabulek v oboru databáze nebo příkazu a přitom zachovat úroveň kompatibility databáze 140 a vyšší. Výchozí hodnota je ON
. Prokládání provádění je funkce, která je součástí adaptivního zpracování dotazů ve službě Azure SQL Database. Další informace najdete v tématu Inteligentní zpracování dotazů.
Poznámka
Pro úroveň kompatibility databáze 130 nebo nižší nemá tato konfigurace s vymezeným oborem databáze žádný vliv.
V SQL Serveru 2017 (14.x) měla možnost INTERLEAVED_EXECUTION_TVF starší název DISABLE_INTERLEAVED_EXECUTION_TVF.
BATCH_MODE_MEMORY_GRANT_FEEDBACK = { ON | VYPNUTO }
platí pro: SQL Server (počínaje SQL Serverem 2019 (15.x)), Azure SQL Database a Azure SQL Managed Instance
Umožňuje povolit nebo zakázat zpětnou vazbu paměti dávkového režimu v oboru databáze a přitom zachovat úroveň kompatibility databáze 140 a vyšší. Výchozí hodnota je ON
. Zpětná vazba o udělení paměti dávkového režimu, která byla zavedena v SQL Serveru 2017 (14.x), je součástí sady funkcí inteligentního zpracování dotazů. Další informace naleznete v tématu Memory grant feedback.
Poznámka
Pro úroveň kompatibility databáze 130 nebo nižší nemá tato konfigurace s vymezeným oborem databáze žádný vliv.
BATCH_MODE_ADAPTIVE_JOINS = { ON | VYPNUTO }
platí pro: SQL Server (počínaje SQL Serverem 2019 (15.x)), Azure SQL Database a Azure SQL Managed Instance
Umožňuje povolit nebo zakázat adaptivní spojení v režimu dávky v oboru databáze a přitom zachovat úroveň kompatibility databáze 140 a vyšší. Výchozí hodnota je ON
. Adaptivní spojení v režimu batch je funkce, která je součástí inteligentního zpracování dotazů zavedených v SQL Serveru 2017 (14.x).
Poznámka
Pro úroveň kompatibility databáze 130 nebo nižší nemá tato konfigurace s vymezeným oborem databáze žádný vliv.
TSQL_SCALAR_UDF_INLINING = { ON | VYPNUTO }
platí pro: SQL Server (počínaje SQL Serverem 2019 (15.x)) a službou Azure SQL Database (funkce je ve verzi Preview)
Umožňuje povolit nebo zakázat vkládání T-SQL Scalar UDF v oboru databáze a přitom zachovat úroveň kompatibility databáze 150 a vyšší. Výchozí hodnota je ON
. Inlining T-SQL Scalar UDF je součástí řady funkcí inteligentního zpracování dotazů funkcí.
Poznámka
Pro úroveň kompatibility databáze 140 nebo nižší nemá tato konfigurace s vymezeným oborem databáze žádný vliv.
ELEVATE_ONLINE = { OFF | WHEN_SUPPORTED | FAIL_UNSUPPORTED }
platí pro: SQL Server (počínaje SQL Serverem 2019 (15.x)), Azure SQL Database a Azure SQL Managed Instance
Umožňuje vybrat možnosti, které způsobí, že modul automaticky zvýší úroveň podporovaných operací na online. Výchozí hodnota je OFF
, což znamená, že operace nejsou zvýšeny na online, pokud není uvedeno v příkazu.
sys.database_scoped_configurations odráží aktuální hodnotu ELEVATE_ONLINE
. Tyto možnosti platí jenom pro operace podporované pro online.
FAIL_UNSUPPORTED
Tato hodnota zvýší úroveň všech podporovaných operací DDL na ONLINE. Operace, které nepodporují online spuštění, selžou a vyvolají chybu.
Poznámka
Přidání sloupce do tabulky je online operace v obecném případě. V některých scénářích, například když přidání sloupce bez hodnoty null, sloupec nejde přidat online. Pokud je v těchto případech nastavená FAIL_UNSUPPORTED, operace selže.
WHEN_SUPPORTED
Tato hodnota zvyšuje počet operací, které podporují ONLINE. Operace, které nepodporují online, se spouštějí offline.
Poznámka
Výchozí nastavení můžete přepsat odesláním příkazu se zadanou možností ONLINE.
ELEVATE_RESUMABLE= { OFF | WHEN_SUPPORTED | FAIL_UNSUPPORTED }
platí pro: SQL Server (počínaje SQL Serverem 2019 (15.x)), Azure SQL Database a Azure SQL Managed Instance
Umožňuje vybrat možnosti, které způsobí, že modul automaticky zvýší úroveň podporovaných operací, aby bylo možné obnovit. Výchozí hodnota je OFF
, což znamená, že operace nebudou zvýšeny, aby bylo možné obnovit, pokud není uvedeno v příkazu.
sys.database_scoped_configurations odráží aktuální hodnotu ELEVATE_RESUMABLE
. Tyto možnosti platí jenom pro operace, které jsou podporovány pro obnovení.
FAIL_UNSUPPORTED
Tato hodnota zvýší úroveň všech podporovaných operací DDL na RESUMABLE. Operace, které nepodporují obnovení spuštění, selžou a vyvolají chybu.
WHEN_SUPPORTED
Tato hodnota zvyšuje počet operací, které podporují funkci RESUMABLE. Operace, které nepodporují obnovení, se nedají spustit.
Poznámka
Výchozí nastavení můžete přepsat odesláním příkazu se zadanou možností RESUMABLE.
OPTIMIZE_FOR_AD_HOC_WORKLOADS = { ON | VYPNUTO }
platí pro: SQL Server (počínaje SQL Serverem 2019 (15.x)), Azure SQL Database a Azure SQL Managed Instance
Povolí nebo zakáže, aby se zkompilovaná procedura plánu ukládal do mezipaměti při prvním kompilaci dávky. Výchozí hodnota je OFF
. Jakmile je pro databázi povolena konfigurace s vymezeným oborem databáze OPTIMIZE_FOR_AD_HOC_WORKLOADS
, uloží se zkompilovaná procedura plánu do mezipaměti při prvním kompilaci dávky. Zástupné procedury plánů mají menší nároky na paměť v porovnání s velikostí úplného zkompilovaného plánu. Pokud je dávka zkompilována nebo znovu spuštěna, zkompilovaná procedura plánu se odebere a nahradí úplným zkompilovaným plánem.
XTP_PROCEDURE_EXECUTION_STATISTICS = { ON | VYPNUTO }
platí pro: Azure SQL Database a Azure SQL Managed Instance
Povolí nebo zakáže shromažďování statistik provádění na úrovni modulu pro nativně kompilované moduly T-SQL v aktuální databázi. Výchozí hodnota je OFF
. Statistika provádění se odráží v sys.dm_exec_procedure_stats.
Statistiky provádění na úrovni modulu pro nativně kompilované moduly T-SQL se shromažďují, pokud je tato možnost zapnutá nebo pokud je shromažďování statistik povolena prostřednictvím sp_xtp_control_proc_exec_stats.
XTP_QUERY_EXECUTION_STATISTICS = { ON | VYPNUTO }
platí pro: Azure SQL Database a Azure SQL Managed Instance
Povolí nebo zakáže shromažďování statistik provádění na úrovni příkazu pro nativně kompilované moduly T-SQL v aktuální databázi. Výchozí hodnota je OFF
. Statistika provádění se odráží v sys.dm_exec_query_stats a v úložiště dotazů.
Statistiky provádění na úrovni příkazů pro nativně kompilované moduly T-SQL se shromažďují, pokud je tato možnost ON
nebo pokud je shromažďování statistik povolena prostřednictvím sp_xtp_control_query_exec_stats.
Další informace o monitorování výkonu nativně kompilovaných modulů Transact-SQL naleznete v tématu Monitorování výkonu nativně kompilovaných uložených procedur.
ROW_MODE_MEMORY_GRANT_FEEDBACK = { ON | VYPNUTO }
platí pro: SQL Server (počínaje SQL Serverem 2019 (15.x)), Azure SQL Database a Azure SQL Managed Instance
Umožňuje povolit nebo zakázat zpětnou vazbu v režimu řádků v oboru databáze a přitom zachovat úroveň kompatibility databáze 150 a vyšší. Výchozí hodnota je ON
. Paměť v režimu řádků uděluje zpětnou vazbu funkce, která je součástí inteligentního zpracování dotazů zavedených v SQL Serveru 2017 (14.x). Režim řádků je podporovaný v SQL Serveru 2019 (15.x) a Azure SQL Database. Další informace o zpětné vazbě k udělení paměti naleznete v tématu Memory grant feedback.
Poznámka
Pro úroveň kompatibility databáze 140 nebo nižší nemá tato konfigurace s vymezeným oborem databáze žádný vliv.
MEMORY_GRANT_FEEDBACK_PERCENTILE_GRANT = { ON | VYPNUTO }
platí pro: SQL Server (počínaje SQL Serverem 2022 (16.x)), Azure SQL Database
Umožňuje zakázat percentil zpětné vazby pro zpětnou vazbu pro všechna spuštění dotazů pocházející z databáze. Výchozí hodnota je ON
. Úplné informace najdete v tématu Percentil a režim trvalosti paměti udělit zpětnou vazbu.
Poznámka
Pro úroveň kompatibility databáze 140 nebo nižší nemá tato konfigurace s vymezeným oborem databáze žádný vliv.
MEMORY_GRANT_FEEDBACK_PERSISTENCE = { ON | VYPNUTO }
platí pro: SQL Server (počínaje SQL Serverem 2022 (16.x)), Azure SQL Database a Azure SQL Managed Instance
Umožňuje zakázat trvalost zpětné vazby u všech spuštění dotazů pocházejících z databáze. Výchozí hodnota je ON
. Úplné informace najdete v tématu Percentil a režim trvalosti paměti udělit zpětnou vazbu.
Poznámka
Pro úroveň kompatibility databáze 140 nebo nižší nemá tato konfigurace s vymezeným oborem databáze žádný vliv.
BATCH_MODE_ON_ROWSTORE = { ON | VYPNUTO }
platí pro: SQL Server (počínaje SQL Serverem 2019 (15.x)), Azure SQL Database a Azure SQL Managed Instance
Umožňuje povolit nebo zakázat dávkový režim úložiště řádků v oboru databáze a přitom zachovat úroveň kompatibility databáze 150 a vyšší. Výchozí hodnota je ON
. Dávkový režim v úložišti řádků je funkce, která je součástí inteligentního zpracování dotazů řadě funkcí.
Poznámka
Pro úroveň kompatibility databáze 140 nebo nižší nemá tato konfigurace s vymezeným oborem databáze žádný vliv.
DEFERRED_COMPILATION_TV = { ON | VYPNUTO }
platí pro: SQL Server (počínaje SQL Serverem 2019 (15.x)), Azure SQL Database a Azure SQL Managed Instance
Umožňuje povolit nebo zakázat odloženou kompilaci proměnné tabulky v oboru databáze a přitom zachovat úroveň kompatibility databáze 150 a vyšší. Výchozí hodnota je ON
. Odložená kompilace proměnné tabulky je funkce, která je součástí inteligentního zpracování dotazů rodině funkcí.
Poznámka
Pro úroveň kompatibility databáze 140 nebo nižší nemá tato konfigurace s vymezeným oborem databáze žádný vliv.
ACCELERATED_PLAN_FORCING = { ON | VYPNUTO }
platí pro: SQL Server (počínaje SQL Serverem 2019 (15.x)), Azure SQL Database a Azure SQL Managed Instance
Umožňuje optimalizovaný mechanismus vynucení plánu dotazů, který se vztahuje na všechny formy vynucení plánu, jako je Plán vynucení úložiště dotazů, automatické laděnínebo POUŽÍT PLÁN nápovědu k dotazu. Výchozí hodnota je ON
.
Poznámka
Nedoporučuje se zakázat zrychlené vynucení plánu.
GLOBAL_TEMPORARY_TABLE_AUTO_DROP = { ON | VYPNUTO }
platí pro: SQL Server (počínaje SQL Serverem 2019 (15.x)), Azure SQL Database a Azure SQL Managed Instance
Umožňuje nastavit funkci automatického rozsadování pro globální dočasné tabulky. Výchozí hodnota je ON
, což znamená, že globální dočasné tabulky se automaticky zahodí, pokud není používána žádnou relací nebo úkolem. Při nastavení na OFF
je možné globální dočasné tabulky explicitně vyhodit pouze pomocí příkazu DROP TABLE
nebo se automaticky zahodí při restartování databázového stroje.
- V jednoúčelových databázích a elastických fondech Azure SQL Database je tato možnost nastavená v jednotlivých uživatelských databázích.
- V SQL Serveru a azure SQL Managed Instance musí být tato možnost nastavena v
tempdb
. Nastavení v jednotlivých uživatelských databázích nemá žádný vliv.
LIGHTWEIGHT_QUERY_PROFILING = { ON | VYPNUTO }
platí pro: SQL Server (počínaje SQL Serverem 2019 (15.x)), Azure SQL Database a Azure SQL Managed Instance
Umožňuje povolit nebo zakázat zjednodušenou infrastrukturu profilace dotazů. Zjednodušená infrastruktura profilace dotazů (LWP) poskytuje data o výkonu dotazů efektivněji než standardní mechanismy profilace a ve výchozím nastavení je povolená. Výchozí hodnota je ON
.
VERBOSE_TRUNCATION_WARNINGS = { ON | VYPNUTO }
platí pro: SQL Server (počínaje SQL Serverem 2019 (15.x)), Azure SQL Database a Azure SQL Managed Instance
Umožňuje povolit nebo zakázat novou chybovou zprávu String or binary data would be truncated
. Výchozí hodnota je ON
. SQL Server 2019 (15.x) zavádí novou, konkrétnější chybovou zprávu (2628) pro tento scénář:
String or binary data would be truncated in table '%.*ls', column '%.*ls'. Truncated value: '%.*ls'.
Pokud je nastavená na ON
v rámci úrovně kompatibility databáze 150, chyby zkrácení vyvolá novou chybovou zprávu 2628, aby poskytovala více kontextu a zjednodušila proces řešení potíží.
Při nastavení na OFF
pod úrovní kompatibility databáze 150 vyvolá chyby zkrácení předchozí chybovou zprávu 8152.
Pro úroveň kompatibility databáze 140 nebo nižší zůstává chybová zpráva 2628 chybovou zprávou, která vyžaduje, aby byla povolena příznak trasování 460 a tato konfigurace s vymezeným oborem databáze nemá žádný vliv.
LAST_QUERY_PLAN_STATS = { ON | VYPNUTO }
platí pro: SQL Server (počínaje SQL Serverem 2019 (15.x)), Azure SQL Database a Azure SQL Managed Instance
Umožňuje povolit nebo zakázat shromažďování statistik plánu posledního dotazu (ekvivalentní skutečnému plánu provádění) v sys.dm_exec_query_plan_stats. Výchozí hodnota je OFF
.
PAUSED_RESUMABLE_INDEX_ABORT_DURATION_MINUTES
platí pro: SQL Server (počínaje SQL Serverem 2022 (16.x)), Azure SQL Database a Azure SQL Managed Instance
Možnost PAUSED_RESUMABLE_INDEX_ABORT_DURATION_MINUTES
určuje, jak dlouho (v minutách) se obnovovatelný index pozastaví, než modul automaticky přeruší.
- Výchozí hodnota je nastavená na jeden den (1440 minut).
- Minimální doba trvání je nastavená na 1 minutu.
- Maximální doba trvání je 71 582 minut
- Pokud je nastavená hodnota 0, pozastavená operace se nikdy automaticky přeruší.
Aktuální hodnota této možnosti se zobrazí v sys.database_scoped_configurations.
ISOLATE_SECURITY_POLICY_CARDINALITY = { ON | VYPNUTO}
platí pro: SQL Server (počínaje SQL Serverem 2019 (15.x)), Azure SQL Database a Azure SQL Managed Instance
Umožňuje řídit, jestli predikát zabezpečení zabezpečení OFF
. Pokud je ISOLATE_SECURITY_POLICY_CARDINALITY
zapnuto, predikát zabezpečení na úrovni řádků nemá vliv na kardinalitu plánu provádění. Představte si například tabulku obsahující 1 milion řádků a predikát RLS, který omezuje výsledek na 10 řádků pro konkrétního uživatele vydávajícího dotaz. U této konfigurace s vymezeným oborem databáze nastavenou na HODNOTU OFF je odhad kardinality tohoto predikátu 10. Pokud je tato konfigurace s vymezeným oborem databáze zapnutá, optimalizace dotazů odhaduje 1 milion řádků. Pro většinu úloh se doporučuje použít výchozí hodnotu.
DW_COMPATIBILITY_LEVEL = { AUTO | 10 | 20 | 30 | 40 | 50 | 9000 }
platí pro: pouze Azure Synapse Analytics
Nastaví Transact-SQL a chování zpracování dotazů tak, aby byly kompatibilní se zadanou verzí databázového stroje. Po nastavení se při spuštění dotazu v této databázi provádějí pouze kompatibilní funkce. Na každé úrovni kompatibility se podporují různá vylepšení zpracování dotazů. Každá úroveň absorbuje funkce předchozí úrovně. Úroveň kompatibility databáze je při prvním vytvoření nastavena na hodnotu AUTO a toto je doporučené nastavení. Úroveň kompatibility se zachová i po pozastavení/obnovení databáze, operacích zálohování a obnovení. Výchozí hodnota je AUTO
.
Úroveň kompatibility | Komentáře |
---|---|
AUTO |
Výchozí. Jeho hodnota se automaticky aktualizuje modulem Synapse Analytics a je reprezentována 0 v sys.database_scoped_configurations.
AUTO aktuálně mapuje na funkce 30 úrovně kompatibility. |
10 |
Cvičení chování Transact-SQL a dotazovacího stroje před zavedením podpory na úrovni kompatibility. |
20 |
První úroveň kompatibility, která zahrnuje hradené Transact-SQL a chování dotazovacího stroje. Systémová uložená procedura sp_describe_undeclared_parameters je podporována na této úrovni. |
30 |
Zahrnuje nové chování dotazovacího stroje. |
40 |
Zahrnuje nové chování dotazovacího stroje. |
50 |
Distribuce s více sloupci je podporována na této úrovni. Další informace najdete v tématu CREATE TABLE, CREATE TABLE AS SELECT a CREATE MATERIALIZED VIEW. |
9000 |
Úroveň kompatibility ve verzi Preview Funkce verze Preview chráněné na této úrovni jsou uvedené v dokumentaci specifické pro funkce. Tato úroveň zahrnuje také schopnosti nejvyšší úrovně, která není9000 . |
EXEC_QUERY_STATS_FOR_SCALAR_FUNCTIONS = { ON | VYPNUTO }
platí pro: SQL Server 2022 (16.x) a novější verze, Azure SQL Database a Azure SQL Managed Instance
Umožňuje řídit, jestli se statistiky provádění skalárních uživatelem definovaných funkcí (UDF) zobrazují v zobrazení systému sys.dm_exec_function_stats. U některých náročnýchúlohch Můžete tomu zabránit nastavením konfigurace EXEC_QUERY_STATS_FOR_SCALAR_FUNCTIONS
databáze na OFF
. Výchozí hodnota je ON
.
ASYNC_STATS_UPDATE_WAIT_AT_LOW_PRIORITY = { ON | VYPNUTO }
platí pro: SQL Server (počínaje SQL Serverem 2022 (16.x)), Azure SQL Database a Azure SQL Managed Instance
Pokud je povolená asynchronní aktualizace statistik, povolení této konfigurace způsobí, že statistika aktualizace požadavků na pozadí čeká na uzamčení Sch-M
ve frontě s nízkou prioritou, aby se zabránilo blokování jiných relací ve scénářích s vysokou souběžností. Další informace naleznete v tématu AUTO_UPDATE_STATISTICS_ASYNC. Výchozí hodnota je OFF
.
OPTIMIZED_PLAN_FORCING = { ON | VYPNUTO }
platí pro: SQL Server (počínaje SQL Serverem 2022 (16.x)), Azure SQL Database
Optimalizovaný plán vynucuje snížení režie kompilace pro opakující se vynucené dotazy. Výchozí hodnota je ON
. Jakmile se vygeneruje plán spouštění dotazů, uloží se konkrétní kroky kompilace pro opakované použití jako skript pro přehrání optimalizace. Skript pro přehrání optimalizace je uložen jako součást komprimovaného souboru XML plánu showplan v úložiště dotazů, ve skrytém atributu OptimizationReplay
. Další informace najdete v optimalizovaném plánu vynuceníúložiště dotazů .
DOP_FEEDBACK = { ON | VYPNUTO }
platí pro: SQL Server (počínaje SQL Serverem 2022 (16.x)), Azure SQL Database
Identifikuje nefektivnosti paralelismu pro opakující se dotazy na základě uplynulého času a čekání. Pokud se využití paralelismu považuje za neefektivní, zpětná vazba DOP sníží doP pro další spuštění dotazu, ať už je nakonfigurovaný dop, a ověří, jestli to pomůže. Vyžaduje povolené úložiště dotazů a v režimu READ_WRITE
. Další informace najdete v tématu stupeň paralelismu (DOP) zpětné vazby. Výchozí hodnota je OFF
.
CE_FEEDBACK = { ON | VYPNUTO }
platí pro: SQL Server (počínaje SQL Serverem 2022 (16.x)), Azure SQL Database a Azure SQL Managed Instance
Zpětná vazba CE řeší vnímané regresní problémy vyplývající z nesprávných předpokladů modelu CE při použití výchozího modelu CE (CE120 nebo vyšší) a může selektivně používat různé předpoklady modelu. Vyžaduje povolené úložiště dotazů a v režimu READ_WRITE
. Další informace naleznete v tématu odhad kardinality (CE) zpětná vazba. Výchozí hodnota je ON
v úrovni kompatibility databáze 160 a vyšší.
PARAMETER_SENSITIVE_PLAN_OPTIMIZATION = { ON | VYPNUTO }
platí pro: SQL Server (počínaje SQL Serverem 2022 (16.x)), Azure SQL Database a Azure SQL Managed Instance
Optimalizace plánu citlivosti parametrů (PSP) řeší scénář, kdy jeden plán uložený v mezipaměti parametrizovaného dotazu není optimální pro všechny možné příchozí hodnoty parametrů. Jedná se o případ s neuniformní distribucí dat. Výchozí hodnota je ON
počínaje úrovní kompatibility databáze 160. Další informace najdete v tématu optimalizace plánu citlivého na parametry.
LEDGER_DIGEST_STORAGE_ENDPOINT = { <řetězec adresy URL koncového bodu> | VYPNUTO }
platí pro: SQL Server (počínaje SQL Serverem 2022 (16.x))
Povolí nebo zakáže nahrávání přehledů registru do služby Azure Blob Storage. Pokud chcete povolit nahrávání hodnot hash registru, zadejte koncový bod účtu služby Azure Blob Storage. Chcete-li zakázat nahrávání hodnot hash registru, nastavte hodnotu možnosti na OFF
. Výchozí hodnota je OFF
.
FORCE_SHOWPLAN_RUNTIME_PARAMETER_COLLECTION = { ON | VYPNUTO }
platí pro: SQL Server (počínaje SQL Serverem 2022 (16.x)), Azure SQL Database a Azure SQL Managed Instance
Způsobí, že SQL Server vygeneruje fragment Showplan XML s parametrem ParameterRuntimeValue při použití infrastruktury profilace zjednodušeného provádění dotazů nebo spuštění sys.dm_exec_query_statistics_xml
DMV při řešení potíží s dlouhotrvajícími dotazy.
Důležitý
Možnost konfigurace s rozsahem FORCE_SHOWPLAN_RUNTIME_PARAMETER_COLLECTION
databáze není určená k nepřetržitému povolení v produkčním prostředí, ale pouze pro účely řešení potíží s omezenými časy. Při použití této možnosti konfigurace s vymezeným oborem databáze se při vytváření fragmentu Showplan XML s informacemi o parametrech modulu runtime zavádí další a pravděpodobně významné režijní náklady na procesor a paměť, ať už je povolená sys.dm_exec_query_statistics_xml
DMV nebo zjednodušená infrastruktura profilu spouštění dotazů.
OPTIMIZED_SP_EXECUTESQL = { ON | VYPNUTO }
platí pro: Azure SQL Database
Povolí nebo zakáže chování serializace kompilace sp_executesql
při kompilaci dávky. Výchozí hodnota je OFF
. Povolení dávek, které používají sp_executesql
k serializaci procesu kompilace snižuje dopad zahlcených kompilací. Kompilace bouře odkazuje na situaci, kdy se současně kompiluje velký počet dotazů, což vede k problémům s výkonem a kolizí prostředků.
Při OPTIMIZED_SP_EXECUTESQL
ON
se první spuštění sp_executesql zkompiluje a vloží jeho zkompilovaný plán do mezipaměti plánu. Jiné relace přeruší čekání na zámek kompilace a znovu použije plán, jakmile bude k dispozici. To umožňuje sp_executesql
chovat se jako objekty, jako jsou uložené procedury a triggery z pohledu kompilace.
Dovolení
Vyžaduje ALTER ANY DATABASE SCOPED CONFIGURATION
v databázi. Toto oprávnění může udělit uživatel s oprávněním CONTROL
k databázi.
Poznámky
Sekundární databáze sice můžete nakonfigurovat tak, aby měly různá nastavení konfigurace s vymezeným oborem od primární databáze, ale všechny sekundární databáze používají stejnou konfiguraci. Různá nastavení se nedají nakonfigurovat pro jednotlivé sekundy.
Provedením tohoto příkazu vymažete mezipaměť procedur v aktuální databázi, což znamená, že všechny dotazy musí překompilovat.
U třídílných názvových dotazů jsou nastavení aktuálního připojení databáze pro dotaz dodržena, kromě modulů SQL (například procedur, funkcí a triggerů), které jsou zkompilovány v jiném kontextu databáze, a proto používají možnosti databáze, ve které se nacházejí. Podobně platí, že při asynchronní aktualizaci statistik je nastavení ASYNC_STATS_UPDATE_WAIT_AT_LOW_PRIORITY
pro databázi, ve které se nachází statistika, dodržena.
Událost ALTER_DATABASE_SCOPED_CONFIGURATION
se přidá jako událost DDL, která se dá použít k aktivaci triggeru DDL a je podřízeným objektem skupiny triggerů ALTER_DATABASE_EVENTS
.
Když se daná databáze obnoví nebo připojí, přenesou se nastavení konfigurace s vymezeným oborem databáze a zůstanou s databází.
Počínaje SQL Serverem 2019 (15.x) ve službě Azure SQL Database a službou Azure SQL Managed Instance se změnily některé názvy možností:
-
DISABLE_INTERLEAVED_EXECUTION_TVF
změněno naINTERLEAVED_EXECUTION_TVF
-
DISABLE_BATCH_MODE_MEMORY_GRANT_FEEDBACK
změněno naBATCH_MODE_MEMORY_GRANT_FEEDBACK
-
DISABLE_BATCH_MODE_ADAPTIVE_JOINS
změněno naBATCH_MODE_ADAPTIVE_JOINS
V databázi SQL v Microsoft Fabric je ověřování prostřednictvím předávacího kódu Microsoft Entra ID pomocí USER IDENTITY
.
Kontrola stavu možnosti konfigurace s vymezeným oborem databáze
Pokud chcete zkontrolovat, jestli je v databázi povolená konfigurace (1) nebo zakázaná (0), můžete dotazovat sys.database_scoped_configurations. Pokud chcete například zkontrolovat hodnotu LEGACY_CARDINALITY_ESTIMATION
použít dotaz podobný tomuto:
USE <user_database>;
SELECT
name,
value,
value_for_secondary
FROM sys.database_scoped_configurations
WHERE name = 'LEGACY_CARDINALITY_ESTIMATION';
Omezení
MAXDOP
Podrobná nastavení můžou přepsat globální nastavení a správce prostředků může všechna ostatní nastavení MAXDOP limitovat. Logika nastavení MAXDOP
je následující:
Nápověda dotazu přepíše konfiguraci
sp_configure
i databáze s vymezeným oborem. Pokud je pro skupinu úloh nastavená skupina prostředků MAXDOP:Pokud je nápověda dotazu nastavená na nulu (0), přepíše se nastavením správce prostředků.
Pokud tip dotazu není nula (0), je omezený nastavením správce prostředků.
Konfigurace s vymezeným oborem databáze (pokud není nula) přepíše nastavení
sp_configure
, pokud neexistuje nápověda dotazu a není omezen nastavením správce prostředků.Nastavení
sp_configure
se přepíše nastavením správce prostředků.
QUERY_OPTIMIZER_HOTFIXES
Pokud se QUERYTRACEON
nápovědy používá k povolení výchozího optimalizátoru dotazů SQL Serveru 7.0 až SQL Serveru 2012 (11.x) nebo oprav hotfix pro optimalizátor dotazů, jedná se o podmínku OR mezi nápovědou dotazu a nastavením konfigurace s vymezeným oborem databáze, což znamená, že je povolená, platí konfigurace s vymezeným oborem databáze.
Geografické zotavení po havárii
Čitelné sekundární databáze (skupiny dostupnosti AlwaysOn, Azure SQL Database a geograficky replikované databáze Azure SQL Managed Instance) používají sekundární hodnotu kontrolou stavu databáze. I když při převzetí služeb při selhání nedojde k překompilování a technicky nový primární má dotazy, které používají sekundární nastavení, je nápad, že se nastavení mezi primárním a sekundárním nastavením liší jenom v případě, že se zatížení liší, a proto dotazy uložené v mezipaměti používají optimální nastavení, zatímco nové dotazy vyberou nová nastavení, která jsou pro ně vhodná.
DacFx
Vzhledem k tomu, že ALTER DATABASE SCOPED CONFIGURATION
je nová funkce ve službě Azure SQL Database, spravovaná instance Azure SQL a SQL Server (počínaje SQL Serverem 2016 (13.x),které ovlivňují schéma databáze, exporty schématu (s daty nebo bez dat) se nedají importovat do starší verze SQL Serveru, jako je SQL Server 2012 (11.x) nebo SQL Server 2014 (12.x). Například export do databáze DACPAC nebo BACPAC z databáze SQL Database nebo SQL Serveru 2016 (13.x), která tuto novou funkci použila, by se nepodařilo importovat na server nižší úrovně.
ELEVATE_ONLINE
Tato možnost se vztahuje pouze na příkazy DDL, které podporují WITH (ONLINE = <syntax>)
. Indexy XML nejsou ovlivněny.
ELEVATE_RESUMABLE
Tato možnost se vztahuje pouze na příkazy DDL, které podporují WITH (RESUMABLE = <syntax>)
. Indexy XML nejsou ovlivněny.
Metadata
Zobrazení systému sys.database_scoped_configurations (Transact-SQL) poskytuje informace o konfiguracích s vymezeným oborem v databázi. Možnosti konfigurace v oboru databáze se zobrazují jenom v sys.database_scoped_configurations
, protože se přepíší na výchozí nastavení pro celou serverovou verzi. Zobrazení systému sys.configurations (Transact-SQL) zobrazuje pouze nastavení celého serveru.
Příklady
Tyto příklady ukazují použití ALTER DATABASE SCOPED CONFIGURATION
.
A. Udělení oprávnění
Tento příklad uděluje oprávnění vyžadovaná ke spuštění ALTER DATABASE SCOPED CONFIGURATION
uživateli Joe
.
GRANT ALTER ANY DATABASE SCOPED CONFIGURATION TO [Joe];
B. Nastavení MAXDOP
Tento příklad nastaví MAXDOP = 1 pro primární databázi a MAXDOP = 4 pro sekundární databázi ve scénáři geografické replikace.
ALTER DATABASE SCOPED CONFIGURATION
SET MAXDOP = 1;
ALTER DATABASE SCOPED CONFIGURATION
FOR SECONDARY
SET MAXDOP = 4;
Tento příklad nastaví MAXDOP pro sekundární databázi tak, aby byla stejná jako u primární databáze ve scénáři geografické replikace.
ALTER DATABASE SCOPED CONFIGURATION
FOR SECONDARY
SET MAXDOP = PRIMARY;
C. Nastavení LEGACY_CARDINALITY_ESTIMATION
Tento příklad nastaví LEGACY_CARDINALITY_ESTIMATION
na ON
sekundární databáze ve scénáři geografické replikace.
ALTER DATABASE SCOPED CONFIGURATION
FOR SECONDARY
SET LEGACY_CARDINALITY_ESTIMATION = ON;
Tento příklad nastaví LEGACY_CARDINALITY_ESTIMATION
pro sekundární databázi, protože se jedná o primární databázi ve scénáři geografické replikace.
ALTER DATABASE SCOPED CONFIGURATION
FOR SECONDARY
SET LEGACY_CARDINALITY_ESTIMATION = PRIMARY;
D. Nastavení PARAMETER_SNIFFING
Tento příklad nastaví PARAMETER_SNIFFING
na OFF
pro primární databázi ve scénáři geografické replikace.
ALTER DATABASE SCOPED CONFIGURATION
SET PARAMETER_SNIFFING = OFF;
Tento příklad nastaví PARAMETER_SNIFFING
na OFF
sekundární databáze ve scénáři geografické replikace.
ALTER DATABASE SCOPED CONFIGURATION
FOR SECONDARY
SET PARAMETER_SNIFFING = OFF;
Tento příklad nastaví PARAMETER_SNIFFING
pro sekundární databázi, protože je v primární databázi ve scénáři geografické replikace.
ALTER DATABASE SCOPED CONFIGURATION
FOR SECONDARY
SET PARAMETER_SNIFFING = PRIMARY;
E. Nastavení QUERY_OPTIMIZER_HOTFIXES
Nastavte QUERY_OPTIMIZER_HOTFIXES
na ON
pro primární databázi ve scénáři geografické replikace.
ALTER DATABASE SCOPED CONFIGURATION
SET QUERY_OPTIMIZER_HOTFIXES = ON;
F. Vymazat mezipaměť procedur
Tento příklad vymaže mezipaměť procedur (možná pouze pro primární databázi).
ALTER DATABASE SCOPED CONFIGURATION
CLEAR PROCEDURE_CACHE;
G. Nastavení IDENTITY_CACHE
platí pro: SQL Server (počínaje SQL Serverem 2017 (14.x)), Azure SQL Database a Azure SQL Managed Instance
Tento příklad zakáže mezipaměť identit.
ALTER DATABASE SCOPED CONFIGURATION
SET IDENTITY_CACHE = OFF;
H. Nastavení OPTIMIZE_FOR_AD_HOC_WORKLOADS
platí pro: SQL Server (počínaje SQL Serverem 2019 (15.x)), Azure SQL Database a Azure SQL Managed Instance
Tento příklad umožňuje uložení zkompilované procedury plánu do mezipaměti při prvním kompilaci dávky.
ALTER DATABASE SCOPED CONFIGURATION
SET OPTIMIZE_FOR_AD_HOC_WORKLOADS = ON;
Já. Nastavení ELEVATE_ONLINE
platí pro: SQL Server (počínaje SQL Serverem 2019 (15.x)), Azure SQL Database a Azure SQL Managed Instance
Tento příklad nastaví ELEVATE_ONLINE
na FAIL_UNSUPPORTED
.
ALTER DATABASE SCOPED CONFIGURATION
SET ELEVATE_ONLINE = FAIL_UNSUPPORTED;
J. Nastavení ELEVATE_RESUMABLE
platí pro: SQL Server (počínaje SQL Serverem 2019 (15.x)), Azure SQL Database a Azure SQL Managed Instance
Tento příklad nastaví ELEVATE_RESUMABLE
na WHEN_SUPPORTED
.
ALTER DATABASE SCOPED CONFIGURATION
SET ELEVATE_RESUMABLE = WHEN_SUPPORTED;
K. Vymazání plánu dotazu z mezipaměti plánu
platí pro: SQL Server (počínaje SQL Serverem 2019 (15.x)), Azure SQL Database a Azure SQL Managed Instance
Tento příklad vymaže konkrétní plán z mezipaměti procedur:
ALTER DATABASE SCOPED CONFIGURATION CLEAR PROCEDURE_CACHE 0x06000500F443610F003B7CD12C02000001000000000000000000000000000000000000000000000000000000;
L. Nastavení pozastavené doby trvání
platí pro: Azure SQL Database a Azure SQL Managed Instance
Tento příklad nastaví obnovitelnou dobu pozastavení indexu na 60 minut.
ALTER DATABASE SCOPED CONFIGURATION
SET PAUSED_RESUMABLE_INDEX_ABORT_DURATION_MINUTES = 60;
M. Povolení a zakázání nahrávání přehledů registru
platí pro: SQL Server (počínaje SQL Serverem 2022 (16.x))
Tento příklad umožňuje nahrání přehledů registru do účtu úložiště Azure.
ALTER DATABASE SCOPED CONFIGURATION
SET LEDGER_DIGEST_STORAGE_ENDPOINT = 'https://mystorage.blob.core.windows.net';
Tento příklad zakáže nahrávání přehledů registru.
ALTER DATABASE SCOPED CONFIGURATION
SET LEDGER_DIGEST_STORAGE_ENDPOINT = OFF;
Další zdroje informací
Prostředky MAXDOP
- stupeň paralelismu
- Doporučení a pokyny pro možnost konfigurace maximálního stupně paralelismu v SQL Serveru
prostředky LEGACY_CARDINALITY_ESTIMATION
- odhad kardinality (SQL Server)
- optimalizace plánů dotazů pomocí nástroje pro posouzení kardinality SQL Serveru 2014
prostředky PARAMETER_SNIFFING
- sniffing parametrů
- "Cítím parametr!"
prostředky QUERY_OPTIMIZER_HOTFIXES
- příznaky trasování
- servisního modelu příznakem trasování dotazů SQL Serveru příznakem 4199
prostředky ELEVATE_ONLINE
Guidelines for Online Index Operations
prostředky ELEVATE_RESUMABLE
Guidelines for Online Index Operations
Související obsah
- sys.database_scoped_configurations
- sys.configurations
- zobrazení katalogu databází a souborů (Transact-SQL)
- Možnosti konfigurace serveru (SQL Server)
-
ALTER INDEX (Transact-SQL) -
CREATE INDEX (Transact-SQL) - Doporučení a pokyny pro možnost konfigurace maximálního stupně paralelismu v SQL Serveru
- fungování online operací indexování
- provádět online operace indexování
- inteligentní zpracování dotazů v databázích SQL
- Memory grant feedback
- odhad kardinality (CE) zpětné vazby
- stupeň paralelismu (DOP)