MySQL-Server – Schlüsselcache-Schreibvorgänge (\%) überwachen
Der Prozentsatz physischer Schreibvorgänge eines Schlüsselblocks auf den Datenträger im Vergleich zu Anforderungen zum Schreiben eines Schlüsselblocks in den Schlüsselcache. Der MyISAM-Schlüsselcache ist eine Datenstruktur, die die am häufigsten verwendeten Indexblöcke enthält. Die Größe des Schlüsselcache wird mit der globalen Variablen "key_buffer_size" gesteuert. Der Schwellenwert des Monitors wird anhand eines Durchschnitts der Werte analysiert, die nach dem Abrufen vom Agent zurückgegeben werden. Dabei wird die Anzahl der Abtastungen, die in die Berechnung des Durchschnitts einfließen, über den Parameter "Anzahl der Abtastungen" gesteuert.
Ein fehlerhafter Status weist auf einen niedrigen Prozentsatz an Schreibvorgängen in den Schlüsselcache im Vergleich zu den Schreibvorgängen auf den Datenträger hin. Der Schlüsselcache umfasst möglicherweise nicht genügend Speicherplatz, um alle Schlüsselblöcke zu speichern. Der Schlüsselcache wird mit einem "Selten verwendet"-Algorithmus aktualisiert.
Um auf einen niedrigen Prozentsatz für Schlüsselcachetreffer zu reagieren, erhöhen Sie den Wert der Variablen "key_buffer_size" in der Konfigurationsdatei. Fügen Sie dazu unter den Optionen der Instanzgruppe die folgende Zeile samt Größe hinzu: "key_buffer_size=Größe". Alternativ dazu kann der Server mit der folgenden Option gestartet werden: "--key_buffer_size=Größe".
Standardkonfiguration
Parameter | Standardwert |
Warnungsschwellenwert | Kleiner als 90 |
Fehlerschwellenwert | Kleiner als 80 |
Anzahl der Stichproben | 3 |
Die oben für alle Instanzen oder für eine bestimmte Instanz oder Gruppe definierten Parameterwerte können mithilfe von Außerkraftsetzungen geändert werden.
Target | Microsoft.MySQLServer.ManagedServer.Unix | ||
Parent Monitor | Microsoft.MySQLServer.KeyCachePerformanceRollup | ||
Category | PerformanceHealth | ||
Enabled | True | ||
Alert Generate | True | ||
Alert Severity | MatchMonitorHealth | ||
Alert Priority | Normal | ||
Alert Auto Resolve | True | ||
Monitor Type | Microsoft.Oss.WSManEnumeration.LessThanThreshold.ThreeState.MonitorType | ||
Remotable | True | ||
Accessibility | Public | ||
Alert Message |
| ||
RunAs | Default |
<UnitMonitor ID="Microsoft.MySQLServer.ManagedServer.Unix.KeyCacheWritePct.Monitor" Accessibility="Public" Target="Microsoft.MySQLServer.ManagedServer.Unix" TypeID="Oss!Microsoft.Oss.WSManEnumeration.LessThanThreshold.ThreeState.MonitorType" Enabled="onStandardMonitoring" ParentMonitorID="Microsoft.MySQLServer.KeyCachePerformanceRollup">
<Category>PerformanceHealth</Category>
<AlertSettings AlertMessage="Microsoft.MySQLServer.ManagedServer.Unix.KeyCacheWritePct.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="OverThreshold"/>
<OperationalState HealthState="Warning" MonitorTypeStateID="StatusWarning" ID="UnderWarningThreshold"/>
<OperationalState HealthState="Error" MonitorTypeStateID="StatusError" ID="UnderErrorThreshold"/>
</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>Key Cache Write 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(.)='KeyCacheWritePct']$</Value>
<WarningThreshold>90</WarningThreshold>
<ErrorThreshold>80</ErrorThreshold>
<NumSamples>3</NumSamples>
</Configuration>
</UnitMonitor>