Dedizierter Server Linux Cenos 6 Apache + Nginx
Dieses Problem ist jetzt schon mehrmals aufgetreten und tritt auf, nachdem der Server abgestürzt oder heruntergefahren ist.
der Server wurde beendet, ohne die PID-Datei zu aktualisieren
Danach startet MySQL nicht mehr und gibt immer wieder diesen Fehler aus. Der Server wird beendet, ohne die PID-Datei zu aktualisieren.
In der Vergangenheit bestand die einzige Möglichkeit, MySQL wieder zu starten, darin, alle Dateien einschließlich ibdata1 aus ver/lib/mysql zu entfernen. Dies führte dazu, dass wir alle Datenbanken erneut aus der Sicherung importieren mussten.
Dieser Fehler ist heute erneut aufgetreten, nachdem der Server über Nacht zweimal heruntergefahren und neu gestartet wurde.
Bei dieser Gelegenheit konnte ich jedoch MySQL starten, nachdem ich diese Zeile in etc/my.cnf eingefügt hatte
innodb_force_recovery = 4
Kann mir bitte jemand helfen zu verstehen, warum dieses Problem immer wieder auftritt und wie ich es in Zukunft verhindern kann? Ich habe in der Vergangenheit gelesen, dass die Aktivierung von Oomkill dieses Problem im Falle eines Serverausfalls oder aus anderen Gründen verhindert, aber seitdem ist das gleiche Problem mehrmals aufgetreten.
Die error.log-Datei war riesig, daher habe ich einige Zeilen von vor dem Problem am 16. und 18. August und einige von nach dem Fehler kopiert - und auch einige von nach dem Hinzufügen von innodb_force_recovery = 4 zu etc/my.cnf, seitdem wurde die Protokolldatei nicht mehr aktualisiert -
2020-08-16 22:08:34 8142 [Warnung] InnoDB: Tabelle jawi_6jun20/core_cache_option kann nicht aus dem internen Datenwörterbuch von InnoDB geöffnet werden, obwohl die .frm-Datei für die Tabelle existiert. Siehehttp://dev.mysql.com/doc/refman/5.6/en/innodb-troubleshooting.htmlwie Sie das Problem lösen können. 16.08.2020 22:08:34 8142 [FEHLER] Ungültiger (alter?) Tabellen- oder Datenbankname „admin_rule-bkp-5-aug-2020“
18.08.2020 00:30:57 2ab9cb842700 InnoDB: Fehler: Abrufen persistenter Statistiken für Tabelle „htfr_07aug2020“. „customer_address_entity_text“ angefordert, aber die erforderlichen Systemtabellen mysql.innodb_table_stats und mysql.innodb_index_stats sind nicht vorhanden oder haben eine unerwartete Struktur. Stattdessen werden vorübergehende Statistiken verwendet. 18.08.2020 00:30:57 8142 [FEHLER] Ungültiger (alter?) Tabellen- oder Datenbankname „admin_rule-bkp-5-aug-2020“
2020-08-24 00:01:10 2ad344040700 InnoDB: Fehler: Abrufen persistenter Statistiken für Tabelle „htfr_07aug2020“.„quote“ angefordert, aber die erforderlichen Systemtabellen mysql.innodb_table_stats und mysql.innodb_index_stats sind nicht vorhanden oder haben eine unerwartete Struktur. Stattdessen werden vorübergehende Statistiken verwendet. 2020-08-24 00:01:13 2ad344040700 InnoDB: Fehler: Tabelle „mysql“.„innodb_table_stats“ nicht gefunden.
24.08.020 14:08:21 13903 [Hinweis] InnoDB: innodb_force_recovery wurde auf 4 gesetzt. Die Wiederherstellung nach einem Absturz wird fortgesetzt, obwohl wir nicht auf die .ibd-Datei dieser Tabelle zugreifen können. 2020-08-24 14:08:21 13903 [Anmerkung] InnoDB: Möglicherweise halb geschriebene Datenseiten werden wiederhergestellt. 2020-08-24 14:08:21 13903 [Anmerkung] InnoDB: Aus dem Doublewrite-Puffer ... InnoDB: Wiederherstellung wird durchgeführt: Bis zur Protokollsequenznummer 40054719901 gescannt. InnoDB: 1 Transaktion(en), die zurückgesetzt oder bereinigt werden müssen. InnoDB: Insgesamt 1 Zeilenoperation zum Rückgängigmachen. InnoDB: Der Trx-ID-Zähler beträgt 1124333568. 2020-08-24 14:08:22 13903 [Anmerkung] InnoDB: Starten eines Batches zum Anwenden von Protokolldatensätzen auf die Datenbank ... InnoDB: Fortschritt in Prozent: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 InnoDB: Batch anwenden abgeschlossen 24.08.2020 14:08:23 13903 [Anmerkung] InnoDB: 128 Rollback-Segment(e) sind aktiv. 24.08.2020 14:08:23 13903 [Anmerkung] InnoDB: 5.6.47 gestartet; Protokollsequenznummer 40054719901 24.08.2020 14:08:23 13903 [Anmerkung] InnoDB: !!! innodb_force_recovery ist auf 4 eingestellt !!! 24.08.2020 14:08:23 13903 [Anmerkung] RSA-Privatschlüsseldatei nicht gefunden: /var/lib/mysql//private_key.pem. Einige Authentifizierungs-Plugins funktionieren nicht. 24.08.2020 14:08:23 13903 [Hinweis] Öffentliche RSA-Schlüsseldatei nicht gefunden: /var/lib/mysql//public_key.pem. Einige Authentifizierungs-Plugins funktionieren nicht. 24.08.2020 14:08:23 13903 [Hinweis] Server-Hostname (Bind-Adresse): „*“; Port: 3306 24.08.2020 14:08:23 13903 [Hinweis] IPv6 ist verfügbar. 24.08.2020 14:08:23 13903 [Hinweis] – „::“ wird in „::“ aufgelöst; 24.08.2020 14:08:23 13903 [Hinweis] Server-Socket unter IP erstellt: „::“. 2020-08-24 14:08:23 13903 [Hinweis] Event Scheduler: 0 Ereignisse geladen 2020-08-24 14:08:23 13903 [Hinweis] /usr/sbin/mysqld: bereit für Verbindungen. Version: „5.6.47“ Socket: „/var/lib/mysql/mysql.sock“ Port: 3306 MySQL Community Server (GPL)