데이터베이스의 통계 자동 작성 설정을 모니터링합니다.
이 모니터는 이 데이터베이스의 통계 자동 작성 설정을 확인합니다. 이 모니터는 전체 표준 요구 사항에 포함되므로 설정이 지정된 표준과 맞지 않으면 경고가 발생합니다.
좋은 계획을 수립하려면 쿼리 최적화 프로그램에 정확한 최신 통계가 필요합니다. 대부분의 경우 SQL Server에서 자동으로 통계를 유지 관리하는 것이 좋습니다. "통계 자동 작성" 및 "통계 자동 업데이트"를 해제하면 사용자가 직접 통계를 최신 상태로 유지해야 합니다. 그렇게 하지 못하면 쿼리 성능이 저하됩니다. 대부분의 응용 프로그램에서는 이러한 옵션을 ON으로 설정해야 합니다.
통계 자동 작성 설정이 ON이면 쿼리 최적화 프로그램이 필요에 따라 인덱싱된 뷰의 테이블에 있는 하나 이상의 열에 대한 통계를 만들어 쿼리 계획 및 쿼리 성능을 향상시킵니다.
AUTO_CREATE_STATISTICS {ON | OFF}
이 옵션이 필요한 설정과 일치하지 않으면 경고가 발생합니다. 기본적으로 이 모니터는 이 설정이 “OFF”로 설정될 때 경고를 발생시키도록 구성되어 있습니다.
이 문제는 다음을 수행하여 해결할 수 있습니다.
예상 값과 일치하도록 이 데이터베이스의 구성 설정 변경
이 특정 데이터베이스 또는 모든 데이터베이스에 대한 이 단위 모니터의 예상 값 재정의
또는 이 데이터베이스에서 이 모니터가 별로 중요하지 않을 경우 다음을 수행합니다.
이 특정 데이터베이스 또는 모든 데이터베이스에 대한 재정의를 사용하여 모니터 비활성화
이 특정 데이터베이스 또는 모든 데이터베이스에 대한 재정의를 사용하여 최상위 집계 구성 모니터 비활성화
이 설정에 대한 자세한 정보를 참조: ALTER DATABASE SET 옵션(Transact-SQL)
" 통계를 사용하여 쿼리 성능 향상"도 참조하십시오.
Target | Microsoft.SQLServer.2008.Database | ||
Parent Monitor | Microsoft.SQLServer.2008.Database.AutomaticConfiguration | ||
Category | ConfigurationHealth | ||
Enabled | False | ||
Alert Generate | True | ||
Alert Severity | Warning | ||
Alert Priority | Normal | ||
Alert Auto Resolve | True | ||
Monitor Type | Microsoft.SQLServer.2008.DBConfigurationStatus | ||
Remotable | True | ||
Accessibility | Public | ||
Alert Message |
| ||
RunAs | Default |
<UnitMonitor ID="Microsoft.SQLServer.2008.Database.Configuration.AutoCreateStat" Accessibility="Public" Enabled="false" Target="SQL2008Core!Microsoft.SQLServer.2008.Database" ParentMonitorID="Microsoft.SQLServer.2008.Database.AutomaticConfiguration" Remotable="true" Priority="Normal" TypeID="Microsoft.SQLServer.2008.DBConfigurationStatus" ConfirmDelivery="false">
<Category>ConfigurationHealth</Category>
<AlertSettings AlertMessage="Microsoft.SQLServer.2008.Database.Configuration.AutoCreateStat.AlertMessage">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Warning</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Target/Property[Type="SQL!Microsoft.SQLServer.Database"]/DatabaseName$</AlertParameter1>
<AlertParameter2>$Target/Host/Property[Type="SQL!Microsoft.SQLServer.ServerRole"]/InstanceName$</AlertParameter2>
<AlertParameter3>$Target/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</AlertParameter3>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="ConfigurationValueOK" MonitorTypeStateID="ConfigurationValueOK" HealthState="Success"/>
<OperationalState ID="ConfigurationValueNotOK" MonitorTypeStateID="ConfigurationValueNotOK" HealthState="Warning"/>
</OperationalStates>
<Configuration>
<ConnectionString>$Target/Host/Property[Type="SQL!Microsoft.SQLServer.DBEngine"]/ConnectionString$</ConnectionString>
<DatabaseName>$Target/Property[Type="SQL!Microsoft.SQLServer.Database"]/DatabaseName$</DatabaseName>
<IntervalSeconds>43200</IntervalSeconds>
<SyncTime/>
<ConfigValue>AutoCreateStat</ConfigValue>
<ExpectedValue>ON</ExpectedValue>
<ExcludeOnExpress>false</ExcludeOnExpress>
<SQLSKU>$Target/Host/Property[Type="SQL!Microsoft.SQLServer.DBEngine"]/Edition$</SQLSKU>
<TimeoutSeconds>300</TimeoutSeconds>
</Configuration>
</UnitMonitor>