sys.database_query_store_options (Transact-SQL)
S’applique à : SQL Server 2016 (13.x) et versions ultérieures Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics
Retourne les options Magasin des requêtes pour cette base de données.
Nom de la colonne | Type de données | Description |
---|---|---|
desired_state |
smallint | Indique le mode d’opération souhaité de Magasin des requêtes, défini explicitement par l’utilisateur.0 = OFF 1 = READ_ONLY 2 = READ_WRITE 4 = READ_CAPTURE_SECONDARY |
desired_state_desc |
nvarchar(60) | Description textuelle du mode d’opération souhaité de Magasin des requêtes :OFF READ_ONLY READ_WRITE READ_CAPTURE_SECONDARY |
actual_state |
smallint | Indique le mode d’opération de Magasin des requêtes. Outre la liste des états souhaités requis par l’utilisateur, l’état réel peut être un état d’erreur.0 = OFF 1 = READ_ONLY 2 = READ_WRITE 3 = ERROR 4 = READ_CAPTURE_SECONDARY |
actual_state_desc |
nvarchar(60) | Description textuelle du mode d’opération réel de Magasin des requêtes.OFF READ_ONLY READ_WRITE ERROR READ_CAPTURE_SECONDARY Il existe des situations où l’état réel est différent de l’état souhaité : - Si la base de données est définie sur le mode lecture seule ou si Magasin des requêtes taille dépasse son quota configuré, Magasin des requêtes peut fonctionner en mode lecture seule même si vous spécifiez l’écriture en lecture seule. - Dans des scénarios extrêmes, Magasin des requêtes pouvez entrer un état ERROR en raison d’erreurs internes. Dans SQL Server 2017 (14.x) et versions ultérieures, si cela se produit, Magasin des requêtes pouvez être récupérés en exécutant la sp_query_store_consistency_check procédure stockée dans la base de données affectée. Si l’exécution sp_query_store_consistency_check ne fonctionne pas ou si vous utilisez SQL Server 2016 (13.x), vous devez effacer les données en exécutant ALTER DATABASE [YourDatabaseName] SET QUERY_STORE CLEAR ALL; |
readonly_reason |
int | Lorsque la desired_state_desc valeur est READ_WRITE et la actual_state_desc valeur READ_ONLY est , readonly_reason retourne une carte de bits pour indiquer pourquoi la Magasin des requêtes est en mode lecture seule.1 - la base de données est en mode lecture seule2 - la base de données est en mode mono-utilisateur4 - la base de données est en mode d’urgence8 - la base de données est un réplica secondaire (s’applique aux groupes de disponibilité et à la géoréplication Azure SQL Database). Cette valeur peut être observée efficacement uniquement sur readable les réplicas secondaires65536 - le Magasin des requêtes atteint la limite de taille définie par l’optionmax_storage_size_mb . Pour plus d’informations sur cette option, consultez les options ALTER DATABASE SET.131072 - Le nombre d’instructions différentes dans Magasin des requêtes atteint la limite de mémoire interne. Envisagez de supprimer des requêtes que vous n’avez pas besoin ou de mettre à niveau vers un niveau de service supérieur pour permettre le transfert de Magasin des requêtes en mode lecture-écriture.262144 - La taille des éléments en mémoire en attente d’être conservés sur le disque a atteint la limite de mémoire interne. Magasin des requêtes est en mode lecture seule temporairement jusqu’à ce que les éléments en mémoire soient conservés sur le disque.524288 - La base de données a atteint la limite de taille du disque. Magasin des requêtes fait partie de la base de données utilisateur. Par conséquent, s’il n’y a plus d’espace disponible pour une base de données, cela signifie que Magasin des requêtes ne peut plus croître.Pour revenir en lecture-écriture au mode d’opérations Magasin des requêtes, consultez Vérifier que Magasin des requêtes collecte en continu les données de requête. |
current_storage_size_mb |
bigint | Taille de Magasin des requêtes sur le disque en mégaoctets. |
flush_interval_seconds |
bigint | Période de vidage régulier de Magasin des requêtes données sur le disque en secondes. La valeur par défaut est 900 (15 minutes).Changez à l’aide de l’instruction ALTER DATABASE <database> SET QUERY_STORE (DATA_FLUSH_INTERVAL_SECONDS = <interval>) . |
interval_length_minutes |
bigint | Intervalle d’agrégation des statistiques en minutes. Les valeurs arbitraires ne sont pas autorisées. Utilisez l’une des valeurs suivantes : 1 , , 5 , 10 15 , 30 , et 1440 60 minutes. La valeur par défaut est de 60 minutes. |
max_storage_size_mb |
bigint | Taille maximale du disque pour le Magasin des requêtes en mégaoctets (Mo). La valeur par défaut est de 100 Mo jusqu’à SQL Server 2017 (14,x) et 1 Go dans SQL Server 2019 (15.x) et versions ultérieures. Pour l’édition SQL Database Premium, la valeur par défaut est de 1 Go et pour l’édition SQL Database Basic, la valeur par défaut est de 10 Mo. Changez à l’aide de l’instruction ALTER DATABASE <database> SET QUERY_STORE (MAX_STORAGE_SIZE_MB = <size>) . |
stale_query_threshold_days |
bigint | Nombre de jours pendant lesquels les informations d’une requête sont conservées dans la Magasin des requêtes. La valeur par défaut est 30 . Définissez cette option pour 0 désactiver la stratégie de rétention.Pour l’édition de base de données SQL, la valeur par défaut est de 7 jours. Changez à l’aide de l’instruction ALTER DATABASE <database> SET QUERY_STORE (CLEANUP_POLICY = (STALE_QUERY_THRESHOLD_DAYS = <value>)) . |
max_plans_per_query |
bigint | Limite le nombre maximal de plans stockés. La valeur par défaut est 200 . Si la valeur maximale est atteinte, Magasin des requêtes arrête de capturer de nouveaux plans pour cette requête. Paramètre permettant de 0 supprimer la limitation du nombre de plans capturés.Changez à l’aide de l’instruction ALTER DATABASE<database> SET QUERY_STORE (MAX_PLANS_PER_QUERY = <n>) . |
query_capture_mode |
smallint | Mode de capture de requête actif :1 = ALL : toutes les requêtes sont capturées. Il s’agit de la valeur de configuration par défaut pour SQL Server 2016 (13.x) et les versions ultérieures.2 = AUTO : capturez les requêtes pertinentes en fonction du nombre d’exécutions et de la consommation des ressources. Il s’agit de la valeur de configuration par défaut pour SQL Database.3 = NONE - arrêter la capture de nouvelles requêtes. Magasin des requêtes continue de collecter des statistiques de compilation et d’exécution pour les requêtes qui ont déjà été capturées. Utilisez cette configuration avec prudence, car vous risquez de ne pas capturer des requêtes importantes.4 = CUSTOM - Permet un contrôle supplémentaire sur la stratégie de capture de requête à l’aide des options de QUERY_CAPTURE_POLICY.S’applique à : SQL Server 2019 (15.x) et versions ultérieures. |
query_capture_mode_desc |
nvarchar(60) | Description textuelle du mode de capture réel de Magasin des requêtes :ALL (valeur par défaut pour SQL Server 2016 (13.x) et versions ultérieures)AUTO (par défaut pour SQL Database)NONE CUSTOM |
capture_policy_execution_count |
int | Option de stratégie du mode CUSTOM capture de requête. Définit le nombre d’exécutions d’une requête pendant la période d’évaluation. Par défaut, il s’agit de 30 .S’applique à : SQL Server 2019 (15.x) et versions ultérieures. |
capture_policy_total_compile_cpu_time_ms |
bigint | Option de stratégie du mode CUSTOM capture de requête. Définit le temps UC de compilation écoulé total utilisé par une requête pendant la période d’évaluation. La valeur par défaut est 1000.S’applique à : SQL Server 2019 (15.x) et versions ultérieures. |
capture_policy_total_execution_cpu_time_ms |
bigint | Option de stratégie du mode CUSTOM capture de requête. Définit le temps UC d’exécution écoulé total utilisé par une requête pendant la période d’évaluation. Par défaut, il s’agit de 100 .S’applique à : SQL Server 2019 (15.x) et versions ultérieures. |
capture_policy_stale_threshold_hours |
int | Option de stratégie du mode CUSTOM capture de requête. Définit la période d’évaluation pour déterminer si une requête doit être capturée. La valeur par défaut est 24 heures.S’applique à : SQL Server 2019 (15.x) et versions ultérieures. |
size_based_cleanup_mode |
smallint | Contrôle si le nettoyage est automatiquement activé lorsque la quantité totale de données est proche de la taille maximale :0 = OFF - Le nettoyage basé sur la taille n’est pas activé automatiquement.1 = AUTO - Le nettoyage basé sur la taille est automatiquement activé lorsque la taille sur le disque atteint 90 % de max_storage_size_mb . Il s’agit de la valeur de configuration par défaut.Le nettoyage basé sur la taille supprime les requêtes les moins coûteuses et les plus anciennes en premier. Elle s’arrête quand environ 80 pour cent d’entre max_storage_size_mb elles sont atteintes. |
size_based_cleanup_mode_desc |
nvarchar(60) | Description textuelle du mode de nettoyage réel basé sur la taille de Magasin des requêtes :OFF AUTO (valeur par défaut) |
wait_stats_capture_mode |
smallint | Contrôle si Magasin des requêtes effectue la capture des statistiques d’attente :0 = OFF 1 = ON S’applique à : SQL Server 2017 (14.x) et versions ultérieures. |
wait_stats_capture_mode_desc |
nvarchar(60) | Description textuelle du mode réel de capture des statistiques d’attente :OFF ON (valeur par défaut)S’applique à : SQL Server 2017 (14.x) et versions ultérieures. |
actual_state_additional_info |
nvarchar(4000) | Actuellement inutilisé. |
autorisations
Nécessite l’autorisation VIEW DATABASE STATE
.
Notes
La actual_state_desc
valeur est READ_CAPTURE_SECONDARY
l’état attendu lorsque Magasin des requêtes pour les réplicas secondaires est activé. Pour plus d’informations, consultez Magasin des requêtes pour réplicas secondaires.
Contenu connexe
- sys.query_context_settings (Transact-SQL)
- sys.query_store_plan (Transact-SQL)
- sys.query_store_query (Transact-SQL)
- sys.query_store_query_text (Transact-SQL)
- sys.query_store_runtime_stats (Transact-SQL)
- sys.query_store_wait_stats (Transact-SQL)
- sys.query_store_runtime_stats_interval (Transact-SQL)
- Analyse des performances à l’aide du magasin de requêtes
- Vues de catalogue système (Transact-SQL)
- sys.fn_stmt_sql_handle_from_sql_stmt (Transact-SQL)
- Procédures stockées du Magasin des requêtes (Transact-SQL)