Vorwort: Manchmal wird die mit MySQL verbundene Sitzung abnormal beendet und im Fehlerprotokoll wird ein Alarm des Typs „Beim Lesen der Kommunikationspakete ist ein Fehler aufgetreten“ angezeigt. In diesem Artikel besprechen wir die möglichen Ursachen dieses Fehlers und wie man ihn vermeidet. 1. Statusvariablen Aborted_clients und Aborted_connects Lassen Sie uns zunächst die Bedeutung der beiden Statusvariablen Aborted_clients und Aborted_connects verstehen. Wenn eine Sitzung abnormal beendet wird, ändern sich diese beiden Statuswerte. Laut der offiziellen Dokumentation lautet die Zusammenfassung wie folgt: Mögliche Gründe für den Anstieg der Statusvariable „Aborted_connects“:
Mögliche Gründe für den Anstieg der Statusvariable „Aborted_clients“:
Einfach ausgedrückt: Wenn die Verbindung der Datenbanksitzung zur Datenbank nicht normal hergestellt werden kann, erhöht sich die Variable „Aborted_connects“. Die Datenbanksitzung wurde normal mit der Datenbank verbunden, konnte jedoch nicht normal beendet werden, was zu einer Erhöhung der Variable „Aborted_clients“ führt. 2. Beim Lesen der Kommunikationspakete ist ein Fehler aufgetreten. Ursachenanalyse Welche Situation führt dazu, dass im Fehlerprotokoll ein Alarm ähnlich dem folgenden angezeigt wird: „Abgebrochene Verbindung xxxx zu db: ‚db‘ Benutzer: ‚dbuser‘ Host: ‚Hostname‘ (Beim Lesen der Kommunikationspakete ist ein Fehler aufgetreten)“? Als Nächstes führen wir basierend auf den oben genannten möglichen Gründen einige spezifische Tests durch. Achten Sie auf die Änderungen der Statusvariablen Aborted_clients und Aborted_connects sowie auf die Fehlerprotokolleinträge bei jedem Test.
1. Überprüfen Sie den Wert der Statusvariablen, bevor Sie MySQL testen. Zeigen Sie einen globalen Status wie „abort%“ an. +------------------+-------+| Variablenname | Wert |+------------------+-------+| Abgebrochene Clients | 0 || Abgebrochene Verbindungen | 0 |+------------------+-------+ 2. Testvorgang# mysql -uroot -pwrongpassmysql: [Warnung] Die Verwendung eines Passworts auf der Kommandozeilenschnittstelle kann unsicher sein.FEHLER 1045 (28000): Zugriff verweigert für Benutzer ‚root‘@‚localhost‘ (mit Passwort: JA)# mysql -uroot1 -pwrongpassmysql: [Warnung] Die Verwendung eines Passworts auf der Kommandozeilenschnittstelle kann unsicher sein.FEHLER 1045 (28000): Zugriff verweigert für Benutzer ‚root1‘@‚localhost‘ (mit Passwort: JA) 3. Statusänderungen und Fehlerprotokoll anzeigenmysql> globalen Status wie „abort%“ anzeigen;+------------------+-------+| Variablenname | Wert |+------------------+-------+| Aborted_clients | 0 || Aborted_connects | 2 |+------------------+-------+Fehlerprotokolleintrag:2020-03-16T17:58:35.318819+08:00 6 [Hinweis] Zugriff verweigert für Benutzer „root“@„localhost“ (mit Kennwort: JA)2020-03-16T17:59:04.153753+08:00 7 [Hinweis] Zugriff verweigert für Benutzer „root1“@„localhost“ (mit Kennwort: JA) Ergebnis: Aborted_connects hat ein Fehlerprotokoll, aber keine mit abgebrochenen Verbindungen zusammenhängenden Datensätze.
1. Überprüfen Sie den Wert der Statusvariablen, bevor Sie MySQL testen. Zeigen Sie einen globalen Status wie „abort%“ an. +------------------+----------+| Variablenname | Wert |+------------------+-------+| Aborted_clients | 0 || Aborted_connects | 2 |+------------------+-------+ Abfrage OK, 0 Zeilen betroffen (0,00 Sek.) 3. Überprüfen Sie Statusänderungen und Fehlerprotokollemysql> zeigt globalen Status wie „abort%“ an;+------------------+-------+| Variablenname | Wert |+------------------+-------+| Aborted_clients | 1 || Aborted_connects | 2 |+------------------+-------+ Ergebnis: Aborted_clients wird hinzugefügt, aber es gibt keinen Eintrag im Fehlerprotokoll. Ebenso wird Aborted_clients nach Ablauf der Ruhezeit hinzugefügt, aber es gibt einen Eintrag über eine abgebrochene Verbindung im Fehlerprotokoll. Ein abnormales Beenden einer Sitzung führt normalerweise zu einem Alarm „Verbindung abgebrochen“. Das heißt, wir können durch die Änderung der Statusvariable „Aborted_clients“ erkennen, ob eine abnormale Sitzung vorliegt. Dann ist der Grund für den Alarm „Beim Lesen der Kommunikationspakete ist ein Fehler aufgetreten“ und ähnliche Alarme sehr klar. Nach Rücksprache mit den relevanten Informationen werden die möglichen Gründe für den Alarm „Verbindung abgebrochen“ wie folgt zusammengefasst:
3. Problemvermeidung und Zusammenfassung Tatsächlich sind Verbindungsabbruchsalarme schwer zu vermeiden. Im Fehlerprotokoll wird eine kleine Menge an Verbindungsabbruchsinformationen enthalten sein, die ignoriert werden können. Wenn jedoch in Ihrem Fehlerprotokoll häufig Verbindungsabbruchsalarme auftreten, sollten Sie darauf achten, da dies größere Auswirkungen auf Ihr Unternehmen haben kann. Hier sind einige Vorschläge, wie Sie Fehler vermeiden können. Ich hoffe, sie sind hilfreich für Sie.
Oben finden Sie eine detaillierte Analyse des Alarmprotokolls für abgebrochene MySQL-Verbindungen. Weitere Informationen zum Alarmprotokoll für abgebrochene MySQL-Verbindungen finden Sie in den anderen verwandten Artikeln auf 123WORDPRESS.COM! Das könnte Sie auch interessieren:
|
<<: Implementierung von TypeScript im React-Projekt
>>: Detaillierte Erklärung zur korrekten Installation von OpenCV auf Ubuntu
Inhaltsverzeichnis Über die MariaDB-Datenbank unt...
Bisher konnte react.forwardRef nicht auf höherwer...
Inhaltsverzeichnis 1. Vorbereitung 1. Bereiten Si...
Heutzutage wird aufgrund der Projektanforderungen ...
So erstellen Sie eine virtuelle Linux-Maschine in...
Inhaltsverzeichnis 1. Knoten, Bäume und virtuelle...
Inhaltsverzeichnis 1. Globale Ebene 2. Datenbanke...
Im Test wurde festgestellt, dass wenn die Seitende...
Hintergrund Manchmal müssen wir den Erstellungsze...
Inhaltsverzeichnis 1. Alles auswählen 2. Erhöhen ...
Das MySQL-Protokoll für langsame Abfragen ist seh...
Ich habe vor Kurzem ein Mac-System verwendet und ...
Flex-Grundkonzepte Flex-Layout (Flex ist die Abkü...
Code kopieren Der Code lautet wie folgt: <html...
Vor einiger Zeit habe ich Testern eine Produktver...