Monitora a configuração de Fechamento Automático do banco de dados no Windows. Observação: este monitor é desabilitado por padrão. Use substituições para habilitá-lo quando necessário.
Este monitor verifica a configuração de Fechamento Automático deste banco de dados. Como este monitor é parte de um requisito de padrões gerais, um alerta será gerado se a configuração não atender ao padrão especificado.
A opção AUTO_CLOSE é útil para bancos de dados desktop porque permite que os arquivos de banco de dados sejam gerenciados como arquivos comuns. Eles podem ser movidos, copiados para fazer backups ou mesmo enviados por email a outros usuários. Entretanto, quando o banco de dados for definido como AUTOCLOSE = ON, uma operação que inicia o desligamento automático do banco de dados limpa o cache de planos da instância do SQL Server. A limpeza do cache de planos gera uma recompilação de todos os planos de execução subsequentes e pode causar uma queda repentina e temporária no desempenho de consultas
O espelhamento de banco de dados requer AUTO_CLOSE OFF.
O Fechamento Automático só faz sentido quando você tem certeza de que o padrão de uso do aplicativo manterá o banco de dados fechado por períodos relativamente longos. Alguns aplicativos de usuário único e algumas situações de hospedagem de bancos de dados multilocatários podem se beneficiar com o AUTO_CLOSE ON. Para os demais usos, em geral, não é aconselhável, a menos que você compreenda os padrões de comportamento e de uso do aplicativo
|
Quando a configuração de Fechamento Automático estiver ON, o banco de dados será desligado normalmente e seus recursos serão liberados após o último usuário sair.
AUTO_CLOSE {ON | OFF}
Um alerta de aviso será gerado se a opção de Fechamento Automático não corresponder à configuração necessária. Por padrão, o monitor está configurado para alertar quando essa configuração estiver definida como “ON”.
Este problema pode ser resolvido da seguinte maneira:
Alterar a configuração para este banco de dados para coincidir com o valor esperado.
Substituindo o valor esperado para este monitor de unidade para esse banco de dados específico ou todos os bancos de dados.
Como alternativa, se esse monitor não for preocupante para esse banco de dados:
Desabilitando esse monitor usando substituições para este banco de dados específico ou para todos os bancos de dados.
Desabilitando o monitor de configuração agregado de alto nível usando substituições para este banco de dados específico ou para todos os bancos de dados.
Nome | Descrição | Valor Padrão |
Prioridade do Alerta | Define a Prioridade do Alerta. | Normal |
Severidade do Alerta | Define a Severidade do Alerta. | Aviso |
Habilitado | Habilita ou desabilita o fluxo de trabalho. | Não |
Valor Esperado | O valor esperado da configuração de banco de dados. Para exibir o conjunto de valores aplicáveis, consulte a seção "Configuração" do artigo da base de dados de conhecimento deste monitor. | DESLIGAR |
Gera Alertas | Define se o fluxo de trabalho gera ou não um Alerta. | Sim |
Intervalo (segundos) | O intervalo de tempo recorrente em segundos no qual executar o fluxo de trabalho. | 43.200 |
Tempo de Sincronização | O tempo de sincronização especificado usando um formato de 24 horas. Pode ser omitido. |
|
Tempo Limite (em segundos) | Especifica o tempo que o fluxo de trabalho pode para ser executado antes de ser fechado e marcado como falha. | 300 |
Tempo limite da conexão de banco de dados (segundos) | O fluxo de trabalho falhará e registrará um evento, se ele não conseguir acessar o banco de dados durante o período especificado. | 15 |
Target | Microsoft.SQLServer.Windows.Database | ||
Parent Monitor | Microsoft.SQLServer.Windows.Rollup.Database.AutomaticConfiguration | ||
Category | ConfigurationHealth | ||
Enabled | False | ||
Alert Generate | True | ||
Alert Severity | Warning | ||
Alert Priority | Normal | ||
Alert Auto Resolve | True | ||
Monitor Type | Microsoft.SQLServer.Windows.MonitorType.Database.DBConfigurationStatus | ||
Remotable | True | ||
Accessibility | Public | ||
Alert Message |
| ||
RunAs | Default |
<UnitMonitor ID="Microsoft.SQLServer.Windows.Monitor.Database.AutoCloseConfiguration" Accessibility="Public" Enabled="false" Target="SqlDiscW!Microsoft.SQLServer.Windows.Database" ParentMonitorID="Microsoft.SQLServer.Windows.Rollup.Database.AutomaticConfiguration" Remotable="true" Priority="Normal" TypeID="Microsoft.SQLServer.Windows.MonitorType.Database.DBConfigurationStatus" ConfirmDelivery="false">
<Category>ConfigurationHealth</Category>
<AlertSettings AlertMessage="Microsoft.SQLServer.Windows.Monitor.Database.AutoCloseConfiguration.AlertMessage">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Warning</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Target/Host/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/MachineName$</AlertParameter1>
<AlertParameter2>$Target/Host/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/InstanceName$</AlertParameter2>
<AlertParameter3>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.Database"]/DatabaseName$</AlertParameter3>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="ConfigurationValueOK" MonitorTypeStateID="ConfigurationValueOK" HealthState="Success"/>
<OperationalState ID="ConfigurationValueNotOK" MonitorTypeStateID="ConfigurationValueNotOK" HealthState="Warning"/>
</OperationalStates>
<Configuration>
<MachineName>$Target/Host/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/MachineName$</MachineName>
<NetbiosComputerName>$Target/Host/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/NetbiosComputerName$</NetbiosComputerName>
<InstanceName>$Target/Host/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/InstanceName$</InstanceName>
<DatabaseName>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.Database"]/DatabaseName$</DatabaseName>
<ConfigName>AutoClose</ConfigName>
<ExpectedValue>OFF</ExpectedValue>
<ConnectionString>$Target/Host/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/ConnectionString$</ConnectionString>
<InstanceVersion>$Target/Host/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/Version$</InstanceVersion>
<InstanceEdition>$Target/Host/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/Edition$</InstanceEdition>
<MonitoringType>$Target/Host/Property[Type="SqlDiscW!Microsoft.SQLServer.Windows.DBEngine"]/MonitoringType$</MonitoringType>
<SqlExecTimeoutSeconds>60</SqlExecTimeoutSeconds>
<SqlTimeoutSeconds>15</SqlTimeoutSeconds>
<TimeoutSeconds>300</TimeoutSeconds>
<IntervalSeconds>43200</IntervalSeconds>
<SyncTime/>
</Configuration>
</UnitMonitor>