데이터베이스의 통계를 비동기적으로 자동 업데이트 설정을 모니터링합니다. 참고: 이 모니터는 기본적으로 사용하지 않도록 설정되어 있습니다. 필요한 경우 재정의를 통해 사용하도록 설정하세요.
이 모니터는 이 데이터베이스에 대한 통계를 비동기적으로 자동 업데이트 설정을 확인합니다. 이 모니터는 전체 표준 요구 사항에 포함되므로 설정이 지정된 표준과 맞지 않으면 경고가 발생합니다.
통계를 비동기적으로 자동 업데이트 설정이 ON이면 AUTO_UPDATE_STATISTICS 옵션에 대한 통계 업데이트를 비동기로 지정합니다. 쿼리 최적화 프로그램은 쿼리를 컴파일하기 전에 통계 업데이트가 완료될 때까지 기다리지 않습니다. 이 옵션을 ON으로 설정해도 AUTO_UPDATE_STATISTICS가 ON으로 설정되어 있지 않으면 영향을 주지 않습니다.
AUTO_UPDATE_STATISTICS_ASYNC {ON | OFF}
이 옵션이 필요한 설정과 일치하지 않으면 경고가 발생합니다. 기본적으로 이 모니터는 이 설정이 “ON”으로 설정될 때 경고를 발생시키도록 구성되어 있습니다.
이 데이터베이스 옵션은 기존 응용 프로그램과의 호환성을 위해 기본적으로 OFF로 설정되어 있습니다. 쿼리는 통계 업데이트를 기다리거나 차단하지 않으므로 쿼리가 이전 통계로 컴파일 및 실행되는 경우 성능이 일시적으로 변경될 수 있습니다. 통계의 업데이트가 완료된 후에는 다음 실행 전에 같은 쿼리가 업데이트된 통계에 대해 다시 컴파일됩니다. 그러나 통계가 업데이트 중일 때는 쿼리가 이전 통계에 대해 컴파일되었으므로 쿼리에 일시적으로 성능 문제가 발생할 수 있습니다.
전반적으로 차단 및 대기를 최소화하는 ASYNC 업데이트가 대부분의 응용 프로그램에 가장 적합합니다. ASYNC 업데이트 옵션을 ON으로 설정하고 응용 프로그램에 맞으면 이 유닛 모니터를 비활성화하세요.
이 문제는 다음을 수행하여 해결할 수 있습니다.
예상 값과 일치하도록 이 데이터베이스의 구성 설정 변경
이 특정 데이터베이스 또는 모든 데이터베이스에 대한 이 유닛 모니터의 예상 값 재정의
또는 이 데이터베이스에서 이 모니터가 별로 중요하지 않을 경우 다음을 수행합니다.
이 특정 데이터베이스 또는 모든 데이터베이스에 대한 재정의를 사용하여 모니터 비활성화
이 특정 데이터베이스 또는 모든 데이터베이스에 대한 재정의를 사용하여 최상위 집계 구성 모니터 비활성화
이 설정에 대한 자세한 내용은 다음을 참조하세요. ALTER DATABASE SET 옵션(Transact-SQL)
“ 통계를 사용하여 쿼리 성능 향상 ” 문서도 참조하세요.
이름 | 설명 | 기본값 |
경고 우선 순위 | 알림 우선 순위를 정의합니다. | 보통 |
경고 심각도 | 알림 심각도를 정의합니다. | 경고 |
사용 | 워크플로 사용하거나 사용하지 않도록 설정합니다. | 아니요 |
예상 값 | 데이터베이스 구성 설정의 예상 값입니다. 적용 가능한 값 집합을 보려면 이 모니터의 기술 자료 문서 " 구성" 섹션을 참조하세요. | 끄기 |
알림 생성 | 워크플로에서 알림을 생성하는지 여부를 정의합니다. | 예 |
간격(초) | 워크플로를 실행하는 반복 시간 간격(초)입니다. | 43200 |
동기화 시간 | 24시간 형식으로 지정된 동기화 시간입니다. 생략될 수 있습니다. |
|
시간 제한(초) | 여기서 지정한 시간 동안 워크플로가 실행된 후 워크플로가 닫히고 실패로 표시됩니다. | 300 |
데이터베이스 연결 시간 제한(초) | 워크플로는 지정된 기간 동안 데이터베이스에 액세스할 수 없으면 실패하며 이벤트를 등록합니다. | 15 |
Target | Microsoft.SQLServer.Linux.Database | ||
Parent Monitor | Microsoft.SQLServer.Linux.Rollup.Database.AutomaticConfiguration | ||
Category | ConfigurationHealth | ||
Enabled | False | ||
Alert Generate | True | ||
Alert Severity | Warning | ||
Alert Priority | Normal | ||
Alert Auto Resolve | True | ||
Monitor Type | Microsoft.SQLServer.Linux.MonitorType.Database.DBConfigurationStatus | ||
Remotable | True | ||
Accessibility | Public | ||
Alert Message |
| ||
RunAs | Default |
<UnitMonitor ID="Microsoft.SQLServer.Linux.Monitor.Database.AutoUpdateStatAsyncConfiguration" Accessibility="Public" Enabled="false" Target="SqlDiscL!Microsoft.SQLServer.Linux.Database" ParentMonitorID="Microsoft.SQLServer.Linux.Rollup.Database.AutomaticConfiguration" Remotable="true" Priority="Normal" TypeID="Microsoft.SQLServer.Linux.MonitorType.Database.DBConfigurationStatus" ConfirmDelivery="false">
<Category>ConfigurationHealth</Category>
<AlertSettings AlertMessage="Microsoft.SQLServer.Linux.Monitor.Database.AutoUpdateStatAsyncConfiguration.AlertMessage">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Warning</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.Database"]/DatabaseName$</AlertParameter1>
<AlertParameter2>$Target/Host/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/InstanceName$</AlertParameter2>
<AlertParameter3>$Target/Host/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/MachineName$</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>AutoUpdateStatAsync</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>
<SqlTimeoutSeconds>15</SqlTimeoutSeconds>
<TimeoutSeconds>300</TimeoutSeconds>
<IntervalSeconds>43200</IntervalSeconds>
<SyncTime/>
</Configuration>
</UnitMonitor>