Monitor de Porcentagem de Uso do Cache de Consulta do Servidor MySQL

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

Knowledge Base article:

Resumo

A porcentagem usada do cache de consulta. O cache de consulta armazena o conteúdo de uma instrução selecionada com o resultado correspondente; estes resultados são invalidados depois de uma instrução de inserção, de atualização ou de exclusão. O tamanho do cache de consulta é controlado usando a variável global “query_cache_size”. O tamanho de uma consulta que pode ser inserido no cache de consulta é controlado pela variável global “query_cache_limit”. O limite do monitor é analisado em relação a uma média de valores retornados em sondagens no agente, onde o parâmetro Número de Amostras controla o número de amostras incluídas no cálculo da média.

Causas

Um estado não íntegro indica que o percentual de uso do cache de consulta do MySQL está alto. O cache de consulta pode não ter armazenamento suficiente para consultas usadas recentemente. O limite do cache de consulta para consultas individuais pode estar muito alto, fazendo com que menos consultas sejam armazenadas e causando uma porcentagem de uso maior.

Resoluções

Para resolver uma porcentagem alta de uso do cache de consulta, aumente o query_cache_size para permitir o armazenamento de consultas adicionais. Diminuir o query_cache_limit pode permitir o armazenamento de consultas adicionais no cache de consulta.

Configuração

Configuração Padrão

Parâmetro

Valor padrão

Limite de Aviso

Maior que 85

Limite de Erro

Maior que 95

Número de Amostras

3

As substituições podem ser usadas para alterar os valores de parâmetros definidos acima para todas as instâncias ou para instâncias ou grupos específicos.

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
Porcentagem de Uso do Cache de Consulta do Servidor MySQL
A Porcentagem atual de Uso do Cache de Consulta ({0}\%) do Servidor MySQL está alta
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>