Delen via


sys.database_query_store_options (Transact-SQL)

Van toepassing op: SQL Server 2016 (13.x) en latere versies Van Azure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsSQL-database in Microsoft Fabric Preview

Retourneert de Query Store-opties voor deze database.

Column name Data type Description
desired_state smallint Geeft de gewenste bewerkingsmodus van Query Store aan, expliciet ingesteld door de gebruiker.

0 = OFF
1 = READ_ONLY
2 = READ_WRITE
4 = READ_CAPTURE_SECONDARY
desired_state_desc nvarchar(60) Tekstbeschrijving van de gewenste bewerkingsmodus van Query Store:

OFF
READ_ONLY
READ_WRITE
READ_CAPTURE_SECONDARY
actual_state smallint Geeft de bewerkingsmodus van Query Store aan. Naast een lijst met gewenste statussen die door de gebruiker zijn vereist, kan de werkelijke status een foutstatus zijn.

0 = OFF
1 = READ_ONLY
2 = READ_WRITE
3 = ERROR
4 = READ_CAPTURE_SECONDARY
actual_state_desc nvarchar(60) Tekstbeschrijving van de werkelijke bewerkingsmodus van Query Store.

OFF
READ_ONLY
READ_WRITE
ERROR
READ_CAPTURE_SECONDARY

Er zijn situaties waarin de werkelijke status verschilt van de gewenste status:
- Als de database is ingesteld op de modus Alleen-lezen of als de grootte van Query Store het geconfigureerde quotum overschrijdt, werkt Query Store mogelijk in de modus Alleen-lezen, zelfs als u lezen/schrijven opgeeft.
- In extreme scenario's kan Query Store een FOUTstatus invoeren vanwege interne fouten. In SQL Server 2017 (14.x) en latere versies kan Query Store worden hersteld door de sp_query_store_consistency_check opgeslagen procedure in de betreffende database uit te voeren. Als het uitvoeren sp_query_store_consistency_check niet werkt of als u SQL Server 2016 (13.x) gebruikt, moet u de gegevens wissen door de uitvoering uit te voeren ALTER DATABASE [YourDatabaseName] SET QUERY_STORE CLEAR ALL;
readonly_reason int Wanneer dit desired_state_desc het is READ_WRITE en het actual_state_desc is READ_ONLY, readonly_reason retourneert u een bittoewijzing om aan te geven waarom de Query Store zich in de leesmodus bevindt.

1 - database bevindt zich in de modus Alleen-lezen
2 - database bevindt zich in de modus voor één gebruiker
4 - database bevindt zich in de noodmodus
8 - database is secundaire replica (van toepassing op beschikbaarheidsgroepen en geo-replicatie van Azure SQL Database). Deze waarde kan alleen effectief worden waargenomen op readable secundaire replica's
65536 - Query Store heeft de groottelimiet bereikt die is ingesteld door de max_storage_size_mb optie. Zie OPTIES VOOR ALTER DATABASE SET voor meer informatie over deze optie.
131072 - Het aantal verschillende instructies in Query Store heeft de interne geheugenlimiet bereikt. Overweeg om query's te verwijderen die u niet nodig hebt of die u niet naar een hogere servicelaag hoeft te upgraden om Query Store over te zetten naar de lees-/schrijfmodus.
262144 - De grootte van items in het geheugen die moeten worden bewaard op schijf, heeft de interne geheugenlimiet bereikt. Query Store bevindt zich tijdelijk in de modus Alleen-lezen totdat de items in het geheugen op schijf blijven staan.
524288 - De limiet voor de schijfgrootte van de database is bereikt. Query Store maakt deel uit van de gebruikersdatabase, dus als er geen ruimte meer beschikbaar is voor een database, betekent dit dat Query Store niet meer verder kan groeien.

Zie Controleren of Query Store continu querygegevens verzamelt om de bewerkingsmodus Query Store terug te zetten naar lezen/schrijven.
current_storage_size_mb bigint Grootte van Query Store op schijf in megabytes.
flush_interval_seconds bigint De periode voor het regelmatig leegmaken van Query Store-gegevens naar schijf in seconden. De standaardwaarde is 900 (15 min).

Wijzig met behulp van de ALTER DATABASE <database> SET QUERY_STORE (DATA_FLUSH_INTERVAL_SECONDS = <interval>) instructie.
interval_length_minutes bigint Het aggregatie-interval voor statistieken in minuten. Willekeurige waarden zijn niet toegestaan. Gebruik een van de volgende waarden: 1, , 5, 1510, , , 30, en 601440 minuten. De standaardwaarde is 60 minuten.
max_storage_size_mb bigint Maximale schijfgrootte voor de Query Store in megabytes (MB). De standaardwaarde is 100 MB tot SQL Server 2017 (14.x) en 1 GB in SQL Server 2019 (15.x) en latere versies.

Voor SQL Database Premium-editie is de standaardwaarde 1 GB en voor SQL Database Basic-editie is de standaardwaarde 10 MB.

Wijzig met behulp van de ALTER DATABASE <database> SET QUERY_STORE (MAX_STORAGE_SIZE_MB = <size>) instructie.
stale_query_threshold_days bigint Aantal dagen dat de gegevens voor een query worden bewaard in de Query Store. De standaardwaarde is 30. Ingesteld om 0 het bewaarbeleid uit te schakelen.
Voor de SQL Database Basic-editie is de standaardwaarde 7 dagen.

Wijzig met behulp van de ALTER DATABASE <database> SET QUERY_STORE (CLEANUP_POLICY = (STALE_QUERY_THRESHOLD_DAYS = <value>)) instructie.
max_plans_per_query bigint Beperkt het maximum aantal opgeslagen plannen. De standaardwaarde is 200. Als de maximumwaarde is bereikt, stopt Query Store met het vastleggen van nieuwe plannen voor die query. Als u de beperking voor het aantal vastgelegde plannen wilt 0 verwijderen.

Wijzig met behulp van de ALTER DATABASE<database> SET QUERY_STORE (MAX_PLANS_PER_QUERY = <n>) instructie.
query_capture_mode smallint De momenteel actieve queryopnamemodus:

1 = ALL - alle query's worden vastgelegd. Dit is de standaardconfiguratiewaarde voor SQL Server 2016 (13.x) en latere versies.

2 = AUTO - leg relevante query's vast op basis van het aantal uitvoeringen en het resourceverbruik. Dit is de standaardconfiguratiewaarde voor SQL Database.

3 = NONE - stop met het vastleggen van nieuwe query's. Query Store blijft compileer- en runtimestatistieken verzamelen voor query's die al zijn vastgelegd. Gebruik deze configuratie voorzichtig omdat u belangrijke query's mogelijk niet kunt vastleggen.

4 = CUSTOM - Biedt meer controle over het queryopnamebeleid met behulp van de QUERY_CAPTURE_POLICY-opties.

van toepassing op: SQL Server 2019 (15.x) en latere versies.
query_capture_mode_desc nvarchar(60) Tekstbeschrijving van de werkelijke opnamemodus van Query Store:

ALL (standaard voor SQL Server 2016 (13.x) en latere versies)

AUTO (standaard voor SQL Database)

NONE

CUSTOM
capture_policy_execution_count int Beleidsoptie queryopnamemodus CUSTOM . Hiermee definieert u het aantal keren dat een query wordt uitgevoerd gedurende de evaluatieperiode. De standaardwaarde is 30.

van toepassing op: SQL Server 2019 (15.x) en latere versies.
capture_policy_total_compile_cpu_time_ms bigint Beleidsoptie queryopnamemodus CUSTOM . Hiermee definieert u de totale verstreken CPU-tijd die door een query wordt gebruikt gedurende de evaluatieperiode. De standaardwaarde is 1000.

van toepassing op: SQL Server 2019 (15.x) en latere versies.
capture_policy_total_execution_cpu_time_ms bigint Beleidsoptie queryopnamemodus CUSTOM . Hiermee definieert u de totale verstreken CPU-tijd van de uitvoering die wordt gebruikt door een query gedurende de evaluatieperiode. De standaardwaarde is 100.

van toepassing op: SQL Server 2019 (15.x) en latere versies.
capture_policy_stale_threshold_hours int Beleidsoptie queryopnamemodus CUSTOM . Definieert de evaluatieperiode om te bepalen of een query moet worden vastgelegd. De standaardwaarde is 24 uur.

van toepassing op: SQL Server 2019 (15.x) en latere versies.
size_based_cleanup_mode smallint Hiermee bepaalt u of opschonen automatisch wordt geactiveerd wanneer de totale hoeveelheid gegevens dicht bij de maximale grootte komt:

0 = OFF - Op grootte gebaseerde opschoning wordt niet automatisch geactiveerd.
1 = AUTO - Op grootte gebaseerde opschoning wordt automatisch geactiveerd wanneer de grootte op schijf 90 procent van max_storage_size_mbbereikt. Dit is de standaardconfiguratiewaarde.

Op grootte gebaseerde opschoning verwijdert eerst de goedkoopste en oudste query's. Het stopt wanneer ongeveer 80 procent van max_storage_size_mb de bereiken is bereikt.
size_based_cleanup_mode_desc nvarchar(60) Tekstbeschrijving van de werkelijke op grootte gebaseerde opschoonmodus van Query Store:

OFF
AUTO (standaard)
wait_stats_capture_mode smallint Hiermee bepaalt u of Query Store wachtstatistieken vastlegt:

0 = OFF
1 = ON

van toepassing op: SQL Server 2017 (14.x) en latere versies.
wait_stats_capture_mode_desc nvarchar(60) Tekstuele beschrijving van de werkelijke opnamemodus voor wachtstatistieken:

OFF
ON (standaard)

van toepassing op: SQL Server 2017 (14.x) en latere versies.
actual_state_additional_info nvarchar(4000) Currently unused.

Permissions

Hiervoor is de machtiging VIEW DATABASE STATE vereist.

Remarks

Een actual_state_desc waarde is READ_CAPTURE_SECONDARY de verwachte status wanneer Query Store voor secundaire replica's is ingeschakeld. Voor meer informatie, zie Query Store voor secundaire replica's.