Zusammenfassung mehrerer Fehlerprotokolle zum Einrichten und Wechseln von MySQL MHA

Zusammenfassung mehrerer Fehlerprotokolle zum Einrichten und Wechseln von MySQL MHA

1: Fehler beim Replikationssatz masterha_check_repl. Replikate sind in der Konfigurationsdatei nicht definiert!

Die konkreten Informationen lauten wie folgt:

# /usr/local/bin/masterha_check_repl --conf=/etc/mha/app1.cnf
Do, 21. Nov. 2018, 15:33:15 - [Warnung] Globale Konfigurationsdatei /etc/masterha_default.cnf nicht gefunden. Wird übersprungen.
Do, 21. Nov. 2018, 15:33:15 - [Info] Standardkonfiguration der Anwendung wird aus /etc/mha/app1.cnf gelesen.
Do., 21. Nov. 2018, 15:33:15 Uhr – [Info] Serverkonfiguration wird aus /etc/mha/app1.cnf gelesen.
Do, 21. Nov. 2018, 15:33:15 – [Info] MHA::MasterMonitor Version 0.56.
Do 21 Nov 15:33:16 2018- [Fehler][/usr/local/share/perl5/MHA/ServerManager.pm, ln671] Master 179.179.19.179:3306, von dem Slave 179.179.19.180(179.179.19.180:3306) repliziert, ist in der Konfigurationsdatei nicht definiert!
Do., 21. Nov. 2018, 15:33:16 – [Fehler][/usr/local/share/perl5/MHA/MasterMonitor.pm, ln424] Beim Überprüfen der Konfigurationen ist ein Fehler aufgetreten. bei /usr/local/share/perl5/MHA/MasterMonitor.pm, Zeile 326.
Do., 21. Nov. 2018, 15:33:16 - [Fehler][/usr/local/share/perl5/MHA/MasterMonitor.pm, ln523] Auf den Überwachungsservern ist ein Fehler aufgetreten.
Do., 21. Nov. 2018, 15:33:16 - [Info] Habe Exitcode 1 erhalten (Master nicht tot).

Der Zustand der MySQL-Replikation ist NICHT OK!

Analyse: Nach dem MHA-Drift wissen wir, dass die Informationen des Masterknotens in den Konfigurationsinformationen nicht mehr vorhanden sind. Wir müssen sie rechtzeitig aktualisieren, da sonst /usr/local/bin/masterha_check_repl --conf=/etc/mha/XXX.cnf beim Überprüfen des Status des Replikatsatzes einen Fehler meldet.

2. masterha_master_switch Online-Switching-Fehler Wir sollten den Online-Master-Switch nicht starten, wenn eine der Verbindungen lange Updates auf dem aktuellen Master durchführt.

Die konkreten Informationen lauten wie folgt:

# /usr/local/bin/masterha_master_switch --master_state=alive --conf=/etc/mha/app1.cnf

Es ist besser, FLUSH NO_WRITE_TO_BINLOG TABLES auf dem Master auszuführen, bevor man wechselt. Ist es in Ordnung, es auf 179.179.19.184(179.179.19.184:3306) auszuführen? (JA/Nein): y

Di., 19. Nov. 2018, 17:19:09 - [Info] FLUSH NO_WRITE_TO_BINLOG TABLES wird ausgeführt. Dies kann lange dauern.
Di, 19. Nov. 2018, 17:19:09 - [Info] ok.
Di., 19. Nov. 2018, 17:19:09 - [Info] Überprüfen, dass MHA keine Überwachung durchführt oder ein Failover durchführt.
Di., 19. Nov. 2018, 17:19:09 - [Info] Überprüfen der Replikationsintegrität auf 179.179.19.185.
Di, 19. Nov. 2018, 17:19:09 - [Info] ok.
Di 19. Nov 17:19:09 2018 - [error][/usr/local/share/perl5/MHA/MasterRotate.pm, ln161] Wir sollten den Online-Master-Switch nicht starten, wenn eine der Verbindungen lange Updates auf dem aktuellen Master (179.179.19.184(179.179.19.184:3306)) ausführt. Derzeit laufen 1 Update-Thread(s).
Details:
{'Time' => '12815','db' => undef,'Id' => '1','User' => 'event_scheduler','State' => 'Warten auf leere Warteschlange','Command' => 'Daemon','Info' => undef,'Host' => 'localhost'}
Di., 19. Nov. 2018, 17:19:09 - [Fehler][/usr/local/share/perl5/MHA/ManagerUtil.pm, ln177] FEHLER: bei /usr/local/bin/masterha_master_switch Zeile 53.

Analyse: Setzen Sie den globalen event_scheduler auf „off“. Sowohl Master als auch Slave sollten geschlossen sein.

3. masterha_master_switch Online-Switch-Fehler Fehler aufgetreten: DBI .....fehlgeschlagen: Zugriff für Benutzer verweigert

# /usr/local/bin/masterha_master_switch --master_state=alive --conf=/etc/mha/app1.cnf

Hauptschalter von 179.179.19.185(179.179.19:3306) auf 179.179.19.184(179.179.19.184:3306) starten? (ja/nein): ja

Di., 19. Nov. 2018, 18:52:04 - [Info] Überprüfen, ob 179.179.19.184(179.179.19.184:3306) für den neuen Master in Ordnung ist.
Di, 19. Nov. 2018, 18:52:04 - [Info] ok.
Di., 19. Nov. 2018, 18:52:04 Uhr – [Info] ** Phase 1: Konfigurationsprüfungsphase abgeschlossen.
Di, 19. Nov. 2018, 18:52:04 Uhr - [info] 
Di., 19. Nov. 2018, 18:52:04 Uhr - [Info] * Phase 2: Ablehnen von Aktualisierungen, Phase ...
Di, 19. Nov. 2018, 18:52:04 Uhr - [info] 
Di., 19. Nov. 2018, 18:52:04 - [Info] Ausführen des Online-Änderungsskripts für die Master-IP, um das Schreiben auf dem aktuellen Master zu deaktivieren:
Tue Nov 19 18:52:04 2018 - [info] /usr/local/bin/master_ip_online_change_appuanalysis --command=stop --orig_master_host=179.179.19.185 --orig_master_ip=179.179.19.185 --orig_master_port=3306--orig_master_user='weixinLX391P_xldbmha' --orig_master_password='weixinLX391P_xldbmha\)qlk' --new_master_host=179.179.19.184 --new_master_ip=179.179.19.184 --new_master_port=55988 --new_master_user='us_mha' --new_master_password='weixinLX391P_xldbmha\)qlk' --orig_master_ssh_user=root --new_master_ssh_user=root 
Fehler: DBI connect(';host=179.179.19.184;port=3306;mysql_connect_timeout=4','weixinLX391P_xldbmha',...) fehlgeschlagen: Zugriff für Benutzer 'weixinLX391P_xldbmha'@'179.179.19.166' (mit Kennwort: JA) bei /usr/local/share/perl5/MHA/DBHelper.pm Zeile 205 verweigert.
 bei /usr/local/bin/master_ip_online_change_app1 Zeile 119.

Di., 19. Nov. 2018, 18:52:04 - [Fehler][/usr/local/share/perl5/MHA/ManagerUtil.pm, ln177] FEHLER: bei /usr/local/bin/masterha_master_switch Zeile 53.

Analyse: Einige Zeichen im Account und Passwort müssen übertragen werden. Das dem Benutzerkonto entsprechende Kennwort in der Datei app1.cnf darf keine Escape-Zeichen enthalten (wie in diesem Beispiel „)“). Für das dem Repl_User-Konto entsprechende Kennwort „repl_password“ gilt diese Einschränkung jedoch nicht.

4. Wenn Sie xtrabackup verwenden, beachten Sie bitte, dass der Slave-Knoten das Ereignis wiederherstellt, was zu Dateninkonsistenz und Synchronisierungsfehlern führen kann.

Wenn der Masterknoten ein Ereignis aufweist, müssen Sie das Ereignis des Slaveknotens manuell schließen. Wenn beispielsweise auf dem Masterknoten ein Ereignis zum Archivieren und Löschen von Daten auftritt, muss der Slaveknoten heruntergefahren werden, da andernfalls ein Fehler gemeldet wird. Fehler ähnlich den folgenden:

Das Ereignis „Delete_rows“ konnte für die Tabelle ????DB.*****table nicht ausgeführt werden. Datensatz in „*****“ nicht gefunden, Fehlercode: 1032; Handler-Fehler HA_ERR_KEY_NOT_FOUND; das Hauptprotokoll des Ereignisses ZUERST, end_log_pos XXXXXXX

5. Nachdem der GTID-Modus in den herkömmlichen Modus konvertiert wurde, meldet die Master-Slave-Prüfung der Datenbank im Rahmen des MHA-Mechanismus einen Fehler.

Überprüfen Sie den Befehl:

/usr/local/bin/masterha_check_repl --conf=/etc/mha/qqweixinordb.cnf

Hauptfehlermeldung

„mysqlbinlog“ kann nicht ausgeführt werden: Keine solche Datei oder kein solches Verzeichnis unter /usr/local/share/perl5/MHA/BinlogManager.pm, Zeile 106.
Der Befehl mysqlbinlog version ist mit rc 1:0 fehlgeschlagen. Bitte überprüfen Sie PATH, LD_LIBRARY_PATH und Client-Optionen.
 bei /usr/local/bin/apply_diff_relay_logs Zeile 493.
Fr., 28. Aug. 2019, 04:38:22 - [Fehler][/usr/local/share/perl5/MHA/MasterMonitor.pm, ln205] Überprüfung der Slave-Einstellungen fehlgeschlagen!
Fr., 28. Aug. 2019, 04:38:22 - [Fehler][/usr/local/share/perl5/MHA/MasterMonitor.pm, ln413] Slave-Konfiguration fehlgeschlagen.
Fr., 28. Aug. 2019, 04:38:22 - [Fehler][/usr/local/share/perl5/MHA/MasterMonitor.pm, ln424] Beim Überprüfen der Konfigurationen ist ein Fehler aufgetreten. bei /usr/local/bin/masterha_check_repl, Zeile 48.
Fr., 28. Aug. 2019, 04:38:22 - [Fehler][/usr/local/share/perl5/MHA/MasterMonitor.pm, ln523] Auf den Überwachungsservern ist ein Fehler aufgetreten.
Fr., 28. Aug. 2019, 04:38:22 - [Info] Habe Exitcode 1 erhalten (Master nicht tot).

 Der Zustand der MySQL-Replikation ist NICHT OK!

Lösung - Führen Sie den folgenden Befehl auf jedem DB-Knoten aus

ln -s /usr/local/mysql/bin/mysqlbinlog /usr/local/bin/mysqlbinlog

 ln -s /usr/local/mysql/bin/mysql /usr/local/bin/mysql

Nochmals prüfen, die Fehlermeldung verschwindet, ok.

6. Das Root-Kontokennwort ist abgelaufen

Wenn das Root-Konto ohne Kennwort für die Anmeldung über SSH verwendet wird und für SSH ein Ablauflimit gilt, meldet die MHA-SSH-Prüfung einen Fehler:

/usr/local/bin/masterha_check_ssh --conf=/etc/mha/qqorder.cnf
Do, 5. Nov. 2018, 10:09:09 - [Warnung] Globale Konfigurationsdatei /etc/masterha_default.cnf nicht gefunden. Wird übersprungen.
Do., 5. Nov. 2018, 10:09:09 – [Info] Standardkonfiguration der Anwendung wird aus /etc/mha/pms20epime.cnf gelesen.
Do., 5. Nov. 2018, 10:09:09 Uhr – [Info] Serverkonfiguration wird aus /etc/mha/pms20epime.cnf gelesen.
Do., 5. Nov. 2018, 10:09:09 - [Info] SSH-Verbindungstests werden gestartet.
Do, 5. November 2018, 10:09:09 Uhr – [Fehler][/usr/local/share/perl5/MHA/SSHCheck.pm, ln63]
Do., 5. Nov. 2018, 10:09:09 - [Debug] Verbindung per SSH von [email protected](172.181.191.191:22) zu [email protected](172.181.191.192:22)..

WARNUNG: Ihr Passwort ist abgelaufen.
Passwortänderung erforderlich, aber kein TTY verfügbar.
Do., 5. Nov. 2018, 10:09:09 – [Fehler][/usr/local/share/perl5/MHA/SSHCheck.pm, ln111] SSH-Verbindung von [email protected](172.181.191.191:22) zu [email protected](172.181.191.192:22) fehlgeschlagen!
Do., 5. November 2018, 10:09:10 Uhr – [Fehler][/usr/local/share/perl5/MHA/SSHCheck.pm, ln63]
Do., 5. Nov. 2018, 10:09:09 - [Debug] Verbindung per SSH von [email protected](172.181.191.192:22) zu [email protected](172.181.191.191:22)..

WARNUNG: Ihr Passwort ist abgelaufen.
Passwortänderung erforderlich, aber kein TTY verfügbar.
Do., 5. Nov. 2018, 10:09:10 – [Fehler][/usr/local/share/perl5/MHA/SSHCheck.pm, ln111] SSH-Verbindung von [email protected](172.181.191.192:22) zu [email protected](172.181.191.191:22) fehlgeschlagen!
SSH-Konfigurationsprüfung fehlgeschlagen!
 bei /usr/local/bin/masterha_check_ssh Zeile 44.

Eine weitere Ausprägung ist, dass beim zweiten Ausführen des Kontowechsels eine Fehlermeldung erscheint: sudo su -

Lösung: Führen Sie unter dem Root-Konto den folgenden Befehl aus:

chage -M 99999 Wurzel

Oben finden Sie den detaillierten Inhalt mehrerer Fehlerprotokolle zum Aufbau und Wechsel von MySQL MHA. Weitere Informationen zum Aufbau und Wechsel von MySQL MHA finden Sie in den anderen verwandten Artikeln auf 123WORDPRESS.COM!

Das könnte Sie auch interessieren:
  • So verwenden Sie Python zum Sammeln von Informationen zum Bereitstellungs- und Betriebsstatus von MySQL MHA
  • Eine vollständige Erklärung der MySQL-Hochverfügbarkeitsarchitektur: MHA-Architektur
  • Detaillierte Bereitstellungsschritte für MySQL MHA-Hochverfügbarkeitskonfiguration und Failover
  • Schritte zum Erstellen der MHA-Architekturbereitstellung in MySQL
  • Mysql GTID Mha-Konfigurationsmethode
  • Super-Deployment-Tutorial zur MHA-Hochverfügbarkeits-Failover-Lösung unter MySQL
  • MHA implementiert manuelles Umschalten der MySQL Master-Slave-Datenbank
  • Einführung in die Überwachung des MySQL MHA-Betriebsstatus

<<:  Analyse des Prozesses zum Bereitstellen von Python-Anwendungen in Docker-Containern

>>:  Auszeichnungssprache – CSS-Stil für Webanwendungen

Artikel empfehlen

Funktionsweise von SQL-SELECT-Datenbankabfragen

Obwohl wir keine professionellen DBAs sind, könne...

Informationen zur Auswahl des Uhrzeit-, Datums- und Zeichenfolgentyps in MySQL

Inhaltsverzeichnis 1. Verwendung von DATETIME und...

So legen Sie die Anzahl der MySQL-Verbindungen fest und ermitteln sie

Holen Sie sich die Anzahl der Verbindungen --- Ho...

Eine Zeile CSS-Code zur Integration von Avatar und Nationalflagge

Es ist Nationalfeiertag und jeder kann es kaum er...

Verwenden Sie CSS, um einen kreisförmigen Welleneffekt zu erzielen

Auf Mobilgeräten sehe ich häufig kreisförmige Wel...

Docker-Lernen: Die spezifische Verwendung von Container-Containern

Container sind ein weiteres Kernkonzept von Docke...

Methode und Optimierungsprinzip für langsame MySQL-Abfragen

1. Zum Vergleich der Datumsgröße muss das an XML ...

Die Lösung von html2canvas, dass Bilder nicht normal erfasst werden können

Frage Lassen Sie mich zunächst über das Problem s...

Vue3.0 Handschrift-Lupeneffekt

Der zu erzielende Effekt ist: Festes Vergrößern a...

Offlineinstallation von Centos7.2 mysql5.7.18.tar.gz

Aufgrund der Netzwerkisolation kann MySQL nicht m...

Eine ausführliche Zusammenfassung der Überlegungen zu MySQL-Zeiteinstellungen

Existiert die Zeit wirklich? Manche Menschen glau...