Wartość procentowa połączeń serwera MySQL, które aktualnie są w trakcie przerywania. Połączenia mogą być przerwane z powodu nieprawidłowych poświadczeń logowania z aplikacji klienta lub upływu limitu czasu. Ten monitor dzieli liczbę przerwanych połączeń ze zmiennej stanu Aborted_connects przez liczbę ze zmiennej stanu Connections.
Zła kondycja oznacza, że wartość procentowa przerwanych połączeń serwera MySQL jest aktualnie wysoka. Może to być spowodowane następującymi problemami:
użyto nieprawidłowych uprawnień podczas łączenia się z bazą danych
program klienta nie zamknął połączenia przed zakończeniem działania
pakiety połączeń trwają dłużej niż wartość zmiennej globalnej connect_timeout
pakiet połączenia jest źle sformułowany
pakiety połączeń są większe niż wartość zmiennej globalnej max_allowed_packet
Nieprawidłowa konfiguracja protokołu TCP/IP
Aby rozwiązać problemy związane ze zbyt dużą liczbą przerwanych połączeń, należy wykonać jedną lub więcej z następujących czynności:
określ używane uprawnienia programów klientów
sprawdź, czy program klienta prawidłowo kończy połączenie z serwerem mysql
zwiększ wartość zmiennej globalnej connect_timeout
zwiększ wartość zmiennej globalnej max_allowed_packet
Konfiguracja domyślna
Parametr | Wartość domyślna |
Próg ostrzeżenia | Większy niż 15 |
Próg błędu | Większy niż 30 |
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.
Target | Microsoft.MySQLServer.ManagedServer.Unix | ||
Parent Monitor | Microsoft.MySQLServer.ConnectionsPerformanceRollup | ||
Category | PerformanceHealth | ||
Enabled | True | ||
Alert Generate | True | ||
Alert Severity | MatchMonitorHealth | ||
Alert Priority | Normal | ||
Alert Auto Resolve | True | ||
Monitor Type | Microsoft.Oss.WSManEnumeration.GreaterThanThreshold.ThreeState.MonitorType | ||
Remotable | True | ||
Accessibility | Public | ||
Alert Message |
| ||
RunAs | Default |
<UnitMonitor ID="Microsoft.MySQLServer.ManagedServer.Unix.AbortedConnectionPct.Monitor" Accessibility="Public" Target="Microsoft.MySQLServer.ManagedServer.Unix" TypeID="Oss!Microsoft.Oss.WSManEnumeration.GreaterThanThreshold.ThreeState.MonitorType" Enabled="onStandardMonitoring" ParentMonitorID="Microsoft.MySQLServer.ConnectionsPerformanceRollup">
<Category>PerformanceHealth</Category>
<AlertSettings AlertMessage="Microsoft.MySQLServer.ManagedServer.Unix.AbortedConnectionPct.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>Aborted Connection 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(.)='AbortedConnectionPct']$</Value>
<WarningThreshold>15</WarningThreshold>
<ErrorThreshold>25</ErrorThreshold>
<NumSamples>3</NumSamples>
</Configuration>
</UnitMonitor>