Монитор использования кэша запросов MySQL Server

Microsoft.MySQLServer.ManagedServer.Unix.QueryCacheUsePct.Monitor (UnitMonitor)

Knowledge Base article:

Сводка

Процент использования кэша запросов. В кэше запросов хранится содержимое инструкции select с соответствующим результатом. Эти результаты становятся недействительными после применения инструкций insert, update или delete. Контроль размера кэша осуществляется с помощью глобальной переменной query_cache_size. Размер запроса, который можно вставить в кэш запроса, контролируется с помощью глобальной переменной query_cache_limit. Пороговое значение монитора анализируется путем усреднения значений, возвращаемых при опросе агента. При этом параметр "Число выборок" определяет число образцов, участвующих в вычислении среднего значения.

Причины

Неработоспособное состояние указывает на высокий процент использования кэша запросов MySQL. Кэш запросов может не иметь достаточно места для недавно использовавшихся запросов. Для кэша ключей может быть установлен слишком высокий предел по отдельным запросам, что ведет к уменьшению числа сохраняемых запросов и росту процента использования.

Решения

Чтобы решить проблему, связанную с высоким процентом использования кэша запросов, увеличьте значение query_cache_size для сохранения дополнительных запросов. Уменьшение значения query_cache_limit позволяет сохранить в кэше запросов дополнительные запросы.

Конфигурация

Конфигурация по умолчанию

Параметр

Значение по умолчанию

Порог "предупреждение"

Более 85

Порог "ошибка"

Более 95

Число выборок

3

Для изменения значений определенных выше параметров для всех экземпляров или отдельных экземпляров и групп могут использоваться переопределения.

Element properties:

TargetMicrosoft.MySQLServer.ManagedServer.Unix
Parent MonitorMicrosoft.MySQLServer.QueryCachePerformanceRollup
CategoryPerformanceHealth
EnabledTrue
Alert GenerateTrue
Alert SeverityMatchMonitorHealth
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.Oss.WSManEnumeration.GreaterThanThreshold.ThreeState.MonitorType
RemotableTrue
AccessibilityPublic
Alert Message
Процент использования кэша запросов MySQL Server
Текущий процент использования кэша запросов ({0} \%) для MySQL Server высок
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.MySQLServer.ManagedServer.Unix.QueryCacheUsePct.Monitor" Accessibility="Public" Target="Microsoft.MySQLServer.ManagedServer.Unix" TypeID="Oss!Microsoft.Oss.WSManEnumeration.GreaterThanThreshold.ThreeState.MonitorType" Enabled="onStandardMonitoring" ParentMonitorID="Microsoft.MySQLServer.QueryCachePerformanceRollup">
<Category>PerformanceHealth</Category>
<AlertSettings AlertMessage="Microsoft.MySQLServer.ManagedServer.Unix.QueryCacheUsePct.AlertMessage">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>MatchMonitorHealth</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Data/Context/Value$</AlertParameter1>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState HealthState="Success" MonitorTypeStateID="StatusOK" ID="UnderThreshold"/>
<OperationalState HealthState="Warning" MonitorTypeStateID="StatusWarning" ID="OverWarningThreshold"/>
<OperationalState HealthState="Error" MonitorTypeStateID="StatusError" ID="OverErrorThreshold"/>
</OperationalStates>
<Configuration>
<Interval>300</Interval>
<TargetSystem>$Target/Host/Property[Type="Unix!Microsoft.Unix.Computer"]/NetworkName$</TargetSystem>
<Uri>http://schemas.microsoft.com/wbem/wscim/1/cim-schema/2/MySQL_ServerStatistics?__cimnamespace=root/mysql</Uri>
<WSManFilter/>
<ObjectName>MySQL Server</ObjectName>
<CounterName>Query Cache Use Pct</CounterName>
<InstanceXPath>/DataItem/WsManData/*[local-name(.)='MySQL_ServerStatistics']/*[local-name(.)='InstanceID']</InstanceXPath>
<InstanceName>$Target/Property[Type="Microsoft.MySQLServer.Installation"]/InstanceID$</InstanceName>
<Value>$Data/WsManData/*[local-name(.)='MySQL_ServerStatistics']/*[local-name(.)='QCacheUsePct']$</Value>
<WarningThreshold>85</WarningThreshold>
<ErrorThreshold>95</ErrorThreshold>
<NumSamples>3</NumSamples>
</Configuration>
</UnitMonitor>