Monitor wartości procentowej użycia pamięci podręcznej zapytań serwera MySQL

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

Knowledge Base article:

Podsumowanie

Wartość procentowa użytej pamięci podręcznej zapytań. Pamięć podręczna zapytań przechowuje treść instrukcji select wraz z odpowiadającymi jej wynikami. Te wyniki są unieważniane po wywołaniu instrukcji insert, update lub delete. Rozmiar pamięci podręcznej zapytań jest ustalany za pomocą zmiennej globalnej query_cache_size. Rozmiar zapytania, które może być wstawione do pamięci podręcznej zapytań, jest ustalany za pomocą zmiennej globalnej query_cache_limit. Próg monitora jest analizowany w odniesieniu do średnich wartości zwracanych w sondach do agenta, gdzie parametr Liczba próbek określa liczbę próbek uwzględnionych podczas obliczania średniej.

Przyczyny

Zła kondycja oznacza, że wartość procentowa użycia pamięci podręcznej zapytań serwera MySQL jest wysoka. Może oznaczać brak wystarczającej pamięci podręcznej dla ostatnio używanych zapytań. Limit pamięci podręcznej zapytań dla pojedynczych zapytań może być zbyt wysoki, co powoduje, że zapisywanych jest mniej zapytań, a procent użycia jest większy.

Rozwiązania

Aby rozwiązać problemy związane ze zbyt dużą wartością procentową użycia pamięci podręcznej zapytań, należy zwiększyć wartość zmiennej query_cache_size, co umożliwi zapisywanie dodatkowych zapytań. Zmniejszenie wartości zmiennej query_cache_limit pozwoli na zapisanie dodatkowych zapytań w pamięci.

Konfiguracja

Konfiguracja domyślna

Parametr

Wartość domyślna

Próg ostrzeżenia

Większy niż 85

Próg błędu

Większy niż 95

Liczba próbek

3

W celu zmiany wartości parametrów zdefiniowanych powyżej dla wszystkich lub określonych wystąpień bądź grup można zastosować zastąpienia.

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
Wartość procentowa użycia pamięci podręcznej zapytań dla serwera MySQL
Bieżąca wartość procentowa użycia pamięci podręcznej zapytań ({0}\%) dla serwera MySQL jest wysoka
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>