sys.database_query_store_options (Transact-SQL)
Se aplica a: SQL Server 2016 (13.x) y versiones posteriores de Azure SQL Database Azure SQL Instancia administrada Azure Synapse Analytics
Devuelve las opciones de Almacén de consultas para esta base de datos.
Nombre de la columna | Tipo de datos | Descripción |
---|---|---|
desired_state |
smallint | Indica el modo de operación deseado de Almacén de consultas, establecido explícitamente por el usuario.0 = OFF 1 = READ_ONLY 2 = READ_WRITE 4 = READ_CAPTURE_SECONDARY |
desired_state_desc |
nvarchar(60) | Descripción textual del modo de operación deseado de Almacén de consultas:OFF READ_ONLY READ_WRITE READ_CAPTURE_SECONDARY |
actual_state |
smallint | Indica el modo de operación de Almacén de consultas. Además de la lista de estados deseados requeridos por el usuario, el estado real puede ser un estado de error.0 = OFF 1 = READ_ONLY 2 = READ_WRITE 3 = ERROR 4 = READ_CAPTURE_SECONDARY |
actual_state_desc |
nvarchar(60) | Descripción textual del modo de operación real de Almacén de consultas.OFF READ_ONLY READ_WRITE ERROR READ_CAPTURE_SECONDARY Hay situaciones en las que el estado real es diferente del estado deseado: - Si la base de datos está establecida en modo de solo lectura, o si Almacén de consultas tamaño supera su cuota configurada, Almacén de consultas podría funcionar en modo de solo lectura incluso si especifica lectura y escritura. - En escenarios extremos Almacén de consultas puede especificar un estado ERROR debido a errores internos. En SQL Server 2017 (14.x) y versiones posteriores, si esto sucede, se puede recuperar Almacén de consultas ejecutando el sp_query_store_consistency_check procedimiento almacenado en la base de datos afectada. Si la ejecución sp_query_store_consistency_check no funciona o si usa SQL Server 2016 (13.x), debe borrar los datos mediante la ejecución de . ALTER DATABASE [YourDatabaseName] SET QUERY_STORE CLEAR ALL; |
readonly_reason |
int | desired_state_desc Cuando es READ_WRITE y actual_state_desc es READ_ONLY , readonly_reason devuelve un mapa de bits para indicar por qué el Almacén de consultas está en modo de lectura.1 - la base de datos está en modo de solo lectura2 - la base de datos está en modo de usuario único4 - la base de datos está en modo de emergencia8 - la base de datos es réplica secundaria (se aplica a los grupos de disponibilidad y a la replicación geográfica de Azure SQL Database). Este valor solo se puede observar de forma eficaz en readable las réplicas secundarias.65536 : el Almacén de consultas alcanzó el límite de tamaño establecido por la max_storage_size_mb opción . Para obtener más información sobre esta opción, vea OPCIONES ALTER DATABASE SET.131072 - El número de instrucciones diferentes en Almacén de consultas alcanzó el límite de memoria interna. Considere la posibilidad de quitar consultas que no necesite ni actualizar a un nivel de servicio superior para habilitar la transferencia de Almacén de consultas al modo de lectura y escritura.262144 - El tamaño de los elementos en memoria que esperan conservarse en el disco alcanzó el límite de memoria interna. Almacén de consultas está en modo de solo lectura temporalmente hasta que los elementos en memoria se conservan en el disco.524288 - La base de datos alcanzó el límite de tamaño del disco. Almacén de consultas forma parte de la base de datos de usuario, por lo que si no hay más espacio disponible para una base de datos, significa que ya no puede crecer Almacén de consultas.Para volver al modo de operaciones de Almacén de consultas a lectura y escritura, consulte Comprobar que Almacén de consultas recopila datos de consulta continuamente. |
current_storage_size_mb |
bigint | Tamaño de Almacén de consultas en disco en megabytes. |
flush_interval_seconds |
bigint | Período de vaciado normal de Almacén de consultas datos en disco en segundos. El valor predeterminado es 900 (15 minutos).Cambie mediante la ALTER DATABASE <database> SET QUERY_STORE (DATA_FLUSH_INTERVAL_SECONDS = <interval>) instrucción . |
interval_length_minutes |
bigint | Intervalo de agregación de estadísticas en minutos. No se permiten valores arbitrarios. Use uno de los siguientes valores: 1 , , 10 5 , 15 , 30 , , 60 y 1440 minutos. El valor predeterminado es 60 minutos. |
max_storage_size_mb |
bigint | Tamaño máximo del disco para el Almacén de consultas en megabytes (MB). El valor predeterminado es de 100 MB hasta SQL Server 2017 (14.x) y 1 GB en SQL Server 2019 (15.x) y versiones posteriores. Para la edición SQL Database Premium, el valor predeterminado es de 1 GB y, para sql Database Basic Edition, el valor predeterminado es de 10 MB. Cambie mediante la ALTER DATABASE <database> SET QUERY_STORE (MAX_STORAGE_SIZE_MB = <size>) instrucción . |
stale_query_threshold_days |
bigint | Número de días que la información de una consulta se mantiene en la Almacén de consultas. El valor predeterminado es 30 . Establézcalo en 0 para deshabilitar la directiva de retención.Para la edición básica de SQL Database, el valor predeterminado es 7 días. Cambie mediante la ALTER DATABASE <database> SET QUERY_STORE (CLEANUP_POLICY = (STALE_QUERY_THRESHOLD_DAYS = <value>)) instrucción . |
max_plans_per_query |
bigint | Limita el número máximo de planes almacenados. El valor predeterminado es 200 . Si se alcanza el valor máximo, Almacén de consultas deja de capturar nuevos planes para esa consulta. Si se establece en , 0 se quita la limitación del número de planes capturados.Cambie mediante la ALTER DATABASE<database> SET QUERY_STORE (MAX_PLANS_PER_QUERY = <n>) instrucción . |
query_capture_mode |
smallint | Modo de captura de consulta activo actualmente:1 = ALL : todas las consultas se capturan. Este es el valor de configuración predeterminado para SQL Server 2016 (13.x) y versiones posteriores.2 = AUTO : captura las consultas pertinentes en función del recuento de ejecuciones y el consumo de recursos. Este es el valor de configuración predeterminado para SQL Database.3 = NONE : deje de capturar nuevas consultas. Almacén de consultas sigue recopilando estadísticas de compilación y tiempo de ejecución para las consultas que ya se capturaron. Use esta configuración con precaución, ya que es posible que no capture consultas importantes.4 = CUSTOM - Permite un mayor control sobre la directiva de captura de consultas mediante las opciones de QUERY_CAPTURE_POLICY.Se aplica a: SQL Server 2019 (15.x) y versiones posteriores. |
query_capture_mode_desc |
nvarchar(60) | Descripción textual del modo de captura real de Almacén de consultas:ALL (valor predeterminado para SQL Server 2016 (13.x) y versiones posteriores)AUTO (valor predeterminado para SQL Database)NONE CUSTOM |
capture_policy_execution_count |
int | Opción de directiva del modo CUSTOM de captura de consultas. Define el número de veces que se ejecuta una consulta durante el período de evaluación. El valor predeterminado es 30 .Se aplica a: SQL Server 2019 (15.x) y versiones posteriores. |
capture_policy_total_compile_cpu_time_ms |
bigint | Opción de directiva del modo CUSTOM de captura de consultas. Define el tiempo total de CPU de compilación transcurrido que usa una consulta durante el período de evaluación. El valor predeterminado es 1000.Se aplica a: SQL Server 2019 (15.x) y versiones posteriores. |
capture_policy_total_execution_cpu_time_ms |
bigint | Opción de directiva del modo CUSTOM de captura de consultas. Define el tiempo de ejecución total de CPU transcurrido que ha utilizado una consulta durante el período de evaluación. El valor predeterminado es 100 .Se aplica a: SQL Server 2019 (15.x) y versiones posteriores. |
capture_policy_stale_threshold_hours |
int | Opción de directiva del modo CUSTOM de captura de consultas. Define el período de intervalo de evaluación para determinar si se debe capturar una consulta. El valor predeterminado es 24 horas.Se aplica a: SQL Server 2019 (15.x) y versiones posteriores. |
size_based_cleanup_mode |
smallint | Controla si la limpieza se activa automáticamente cuando la cantidad total de datos se acerca al tamaño máximo:0 = OFF - La limpieza basada en el tamaño no se activa automáticamente.1 = AUTO - la limpieza basada en el tamaño se activa automáticamente cuando el tamaño del disco alcanza el 90 % de max_storage_size_mb . Es el valor de configuración predeterminado.La limpieza según el tamaño quita primero las consultas menos caras y más antiguas. Se detiene cuando se alcanza aproximadamente el 80 por ciento de max_storage_size_mb . |
size_based_cleanup_mode_desc |
nvarchar(60) | Descripción textual del modo de limpieza basado en tamaño real de Almacén de consultas:OFF AUTO (valor predeterminado) |
wait_stats_capture_mode |
smallint | Controla si Almacén de consultas realiza la captura de estadísticas de espera:0 = OFF 1 = ON Se aplica a: SQL Server 2017 (14.x) y versiones posteriores. |
wait_stats_capture_mode_desc |
nvarchar(60) | Descripción textual del modo de captura de estadísticas de espera reales:OFF ON (valor predeterminado)Se aplica a: SQL Server 2017 (14.x) y versiones posteriores. |
actual_state_additional_info |
nvarchar(4000) | Actualmente no se está usando. |
Permisos
Requiere el permiso VIEW DATABASE STATE
.
Comentarios
Un actual_state_desc
valor de READ_CAPTURE_SECONDARY
es el estado esperado cuando se habilita Almacén de consultas para réplicas secundarias. Para obtener más información, consulte Almacén de consultas para réplicas secundarias.
Contenido relacionado
- 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)
- Supervisar el rendimiento mediante el Almacén de consultas
- Vistas de catálogo del sistema (Transact-SQL)
- sys.fn_stmt_sql_handle_from_sql_stmt (Transact-SQL)
- Procedimientos almacenados del almacén de consultas (Transact-SQL)