sys.database_query_store_options (Transact-SQL)
Aplica-se a: SQL Server 2016 (13.x) e versões posteriores Banco de Dados SQL do Azure Instância Gerenciada de SQL do Azure Banco de dados SQL do Azure Synapse Analytics no Microsoft Fabric
Retorna as opções do Repositório de Consultas para esse banco de dados.
Nome da coluna | Tipo de dados | Descrição |
---|---|---|
desired_state |
smallint | Indica o modo de operação desejado do Repositório de Consultas, definido explicitamente pelo usuário.0 = OFF 1 = READ_ONLY 2 = READ_WRITE 4 = READ_CAPTURE_SECONDARY |
desired_state_desc |
nvarchar(60) | Descrição textual do modo de operação desejado do Repositório de Consultas:OFF READ_ONLY READ_WRITE READ_CAPTURE_SECONDARY |
actual_state |
smallint | Indica o modo de operação do Repositório de Consultas. Além da lista de estados desejados exigidos pelo usuário, o estado real pode ser um estado de erro.0 = OFF 1 = READ_ONLY 2 = READ_WRITE 3 = ERROR 4 = READ_CAPTURE_SECONDARY |
actual_state_desc |
nvarchar(60) | Descrição textual do modo de operação real do Repositório de Consultas.OFF READ_ONLY READ_WRITE ERROR READ_CAPTURE_SECONDARY Há situações em que o estado real é diferente do estado desejado: - Se o banco de dados estiver definido como modo somente leitura ou se o tamanho do Repositório de Consultas exceder sua cota configurada, o Repositório de Consultas poderá operar no modo somente leitura, mesmo que você especifique leitura/gravação. - Em cenários extremos, o Repositório de Consultas pode inserir um estado ERROR devido a erros internos. No SQL Server 2017 (14.x) e versões posteriores, se isso acontecer, o Repositório de Consultas poderá ser recuperado executando o sp_query_store_consistency_check procedimento armazenado no banco de dados afetado. Se a execução sp_query_store_consistency_check não funcionar ou se você estiver usando o SQL Server 2016 (13.x), será necessário limpar os dados executando ALTER DATABASE [YourDatabaseName] SET QUERY_STORE CLEAR ALL; |
readonly_reason |
int | Quando o desired_state_desc is READ_WRITE e o actual_state_desc is READ_ONLY , readonly_reason retorna um mapa de bits para indicar por que o Repositório de Consultas está no modo somente leitura.1 - o banco de dados está no modo somente leitura2 - o banco de dados está no modo de usuário único4 - o banco de dados está em modo de emergência8 - o banco de dados é uma réplica secundária (aplica-se a grupos de disponibilidade e replicação geográfica do Banco de Dados SQL do Azure). Esse valor pode ser efetivamente observado apenas em readable réplicas secundárias65536 - o Repositório de Consultas atingiu o limite de tamanho definido pela max_storage_size_mb opção. Para obter mais informações sobre essa opção, consulte Opções de ALTER DATABASE SET.131072 - O número de instruções diferentes no Repositório de Consultas atingiu o limite de memória interna. Considere remover consultas desnecessárias ou atualizar para uma camada de serviço mais alta para habilitar a transferência do Repositório de Consultas para o modo de leitura/gravação.262144 - O tamanho dos itens na memória que aguardam para serem persistidos no disco atingiu o limite de memória interna. O Repositório de Consultas está no modo somente leitura temporariamente até que os itens na memória sejam mantidos no disco.524288 - O banco de dados atingiu o limite de tamanho do disco. O Repositório de Consultas faz parte do banco de dados do usuário, portanto, se não houver mais espaço disponível para um banco de dados, isso significa que o Repositório de Consultas não poderá mais crescer.Para alternar o modo de operações do Repositório de Consultas de volta para leitura/gravação, consulte Verificar se o Repositório de Consultas coleta dados de consulta continuamente. |
current_storage_size_mb |
bigint | Tamanho do Repositório de Consultas no disco em megabytes. |
flush_interval_seconds |
bigint | O período para liberação regular de dados do Repositório de Consultas para o disco em segundos. O valor padrão é 900 (15 min).Altere usando a ALTER DATABASE <database> SET QUERY_STORE (DATA_FLUSH_INTERVAL_SECONDS = <interval>) instrução. |
interval_length_minutes |
bigint | O intervalo de agregação de estatísticas em minutos. Valores arbitrários não são permitidos. Use um dos seguintes valores: 1 , 5 , 10 , 15 , 30 , 60 , e 1440 minutos. O valor padrão é 60 minutos. |
max_storage_size_mb |
bigint | Tamanho máximo do disco para o Repositório de Consultas em megabytes (MB). O valor padrão é 100 MB até SQL Server 2017 (14.x) e 1 GB no SQL Server 2019 (15.x) e versões posteriores. Para a edição Premium do Banco de Dados SQL, o padrão é 1 GB e, para a edição Basic do Banco de Dados SQL, o padrão é 10 MB. Altere usando a ALTER DATABASE <database> SET QUERY_STORE (MAX_STORAGE_SIZE_MB = <size>) instrução. |
stale_query_threshold_days |
bigint | Número de dias em que as informações de uma consulta são mantidas no Repositório de Consultas. O valor padrão é 30 . Defina como 0 para desabilitar a política de retenção.Para a edição Basic do Banco de Dados SQL, o padrão é 7 dias. Altere usando a ALTER DATABASE <database> SET QUERY_STORE (CLEANUP_POLICY = (STALE_QUERY_THRESHOLD_DAYS = <value>)) instrução. |
max_plans_per_query |
bigint | Limita o número máximo de planos armazenados. O valor padrão é 200 . Se o valor máximo for atingido, o Repositório de Consultas interromperá a captura de novos planos para essa consulta. A configuração como 0 remove a limitação do número de planos capturados.Altere usando a ALTER DATABASE<database> SET QUERY_STORE (MAX_PLANS_PER_QUERY = <n>) instrução. |
query_capture_mode |
smallint | O modo de captura de consulta ativo no momento:1 = ALL - Todas as consultas são capturadas. Esse é o valor de configuração padrão para SQL Server 2016 (13.x) e versões posteriores.2 = AUTO - Capture consultas relevantes com base na contagem de execução e no consumo de recursos. Esse é o valor de configuração padrão do Banco de Dados SQL.3 = NONE - Pare de capturar novas consultas. O Repositório de Consultas continua a coletar estatísticas de compilação e runtime para consultas que já foram capturadas. Use essa configuração com cuidado, pois você pode perder a captura de consultas importantes.4 = CUSTOM - Permite mais controle sobre a política de captura de consulta usando as opções QUERY_CAPTURE_POLICY.Aplica-se a: SQL Server 2019 (15.x) e versões posteriores. |
query_capture_mode_desc |
nvarchar(60) | Descrição textual do modo de captura real do Repositório de Consultas:ALL (padrão para SQL Server 2016 (13.x) e versões posteriores)AUTO (padrão para Banco de Dados SQL)NONE CUSTOM |
capture_policy_execution_count |
int | Opção de política de modo CUSTOM de captura de consulta. Define o número de vezes que uma consulta é executada durante o período de avaliação. O padrão é 30 .Aplica-se a: SQL Server 2019 (15.x) e versões posteriores. |
capture_policy_total_compile_cpu_time_ms |
bigint | Opção de política de modo CUSTOM de captura de consulta. Define o tempo total decorrido da CPU de compilação usado por uma consulta durante o período de avaliação. O padrão é 1000.Aplica-se a: SQL Server 2019 (15.x) e versões posteriores. |
capture_policy_total_execution_cpu_time_ms |
bigint | Opção de política de modo CUSTOM de captura de consulta. Define o tempo total decorrido da CPU de execução usado por uma consulta durante o período de avaliação. O padrão é 100 .Aplica-se a: SQL Server 2019 (15.x) e versões posteriores. |
capture_policy_stale_threshold_hours |
int | Opção de política de modo CUSTOM de captura de consulta. Define o período de intervalo de avaliação para determinar se uma consulta deve ser capturada. O padrão é 24 horas.Aplica-se a: SQL Server 2019 (15.x) e versões posteriores. |
size_based_cleanup_mode |
smallint | Controla se a limpeza é ativada automaticamente quando a quantidade total de dados se aproxima do tamanho máximo:0 = OFF - A limpeza com base no tamanho não é ativada automaticamente.1 = AUTO - A limpeza baseada em tamanho é ativada automaticamente quando o tamanho no disco atinge 90% do max_storage_size_mb . Esse é o valor de configuração padrão.Limpeza com base no tamanho remove as consultas menos dispendiosas e mais antigas primeiro. Ele para quando aproximadamente 80 por cento é max_storage_size_mb atingido. |
size_based_cleanup_mode_desc |
nvarchar(60) | Descrição textual do modo de limpeza baseado em tamanho real do Repositório de Consultas:OFF AUTO (padrão) |
wait_stats_capture_mode |
smallint | Controla se o Repositório de Consultas executa a captura de estatísticas de espera:0 = OFF 1 = ON Aplica-se a: SQL Server 2017 (14.x) e versões posteriores. |
wait_stats_capture_mode_desc |
nvarchar(60) | Descrição textual do modo de captura de estatísticas de espera real:OFF ON (padrão)Aplica-se a: SQL Server 2017 (14.x) e versões posteriores. |
actual_state_additional_info |
nvarchar(4000) | Atualmente não utilizado. |
Permissões
Requer a permissão VIEW DATABASE STATE
.
Comentários
Um actual_state_desc
valor de é o estado esperado quando o Repositório de READ_CAPTURE_SECONDARY
Consultas para réplicas secundárias está habilitado. Para obter mais informações, consulte Repositório de Consultas para réplicas secundárias.
Conteúdo 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)
- Monitorando o desempenho com o repositório de consultas
- Exibições de catálogo do sistema (Transact-SQL)
- sys.fn_stmt_sql_handle_from_sql_stmt (Transact-SQL)
- Procedimentos armazenados do Repositório de Consultas (Transact-SQL)