MySQL: InnoDB: ERROR: Das Alter des letzten Prüfpunkts ist X, was die Protokollgruppenkapazität Y überschreitet.

10

In einer Produktions-MySQL-Umgebung wird /var/log/mysql/error.logjede vierte Minute die folgende Fehlermeldung geschrieben :

110723 18:36:02  InnoDB: ERROR: the age of the last checkpoint is 9433856,
InnoDB: which exceeds the log group capacity 9433498.
InnoDB: If you are using big BLOB or TEXT rows, you must set the
InnoDB: combined size of log files at least 10 times bigger than the
InnoDB: largest such row.

Ich bin nicht sicher, wie ich die Fehlermeldung analysieren soll.

Insbesondere verstehe ich nicht, wie sich das Alter des Prüfpunkts auf die "Protokollgruppenkapazität" bezieht und wie sich dies wiederum auf die Größe von Zeilen mit großen BLOB/ TEXTSpalten auswirkt.

Grundsätzlich weiß ich nicht, wie ich dieses Problem beheben und beheben soll. Meine Fragen sind:

  • Was bedeutet die Fehlermeldung?
  • Was mache ich falsch?
  • Wie kann ich es reparieren?
knorv
quelle

Antworten:

11

Die Fehlermeldung bedeutet, dass Sie versuchen, zu schnell zu viele Daten in InnoDB einzufügen, und das InnoDB-Protokoll wird gefüllt, bevor die Daten in die Hauptdatendateien gelöscht werden können.

Um dies zu beheben, müssen Sie MySQL sauber stoppen (sehr wichtig), die vorhandenen InnoDB-Protokolldateien löschen (wahrscheinlich lb_logfile*in Ihrem MySQL-Datenverzeichnis, sofern Sie sie nicht verschoben haben), die Einstellungen innodb_log_file_sizean Ihre Anforderungen anpassen und MySQL erneut starten . Dieser Artikel aus dem MySQL-Performance-Blog ist möglicherweise lehrreich.

womble
quelle
1
Was sind die Konsequenzen, wenn Sie nur die Fehlermeldungen ignorieren?
Matt Healy
1
Sie scherzen, oder? Sie erwägen ernsthaft, eine FEHLERMELDUNG bezüglich der SPEICHERUNG IHRER DATENBANK zu ignorieren? Wann dauert die Behebung etwa 10 Sekunden Ausfallzeit?
womble
6
Nein, es war eigentlich kein Scherz, es war eine echte Frage. Wird der Server abstürzen? Gehen Daten verloren? Wird die Leistung beeinträchtigt? Alles das oben Genannte?
Matt Healy
1
womble, tolle Antwort! Ich habe das Problem bereits behoben, bin aber gespannt, welche Konsequenzen der Fehler hatte, als die Konfiguration falsch war. Die Sache ist, dass ich einige zeitweise Verlangsamungen gesehen habe und ich bin gespannt, ob das mit diesem Fehler zusammenhängt oder ob es etwas anderes war. Vielen Dank!
Knorv
4
Ja, der Datenbankserver hängt effektiv nach Aktualisierungen der InnoDB-Tabellen, wenn das Protokoll voll ist. Es kann eine Website lähmen.
Womble