Heim >Datenbank >MySQL-Tutorial >Warum gibt MySQL den Fehler „Zeilengröße zu groß' (1118) aus und wie kann ich ihn beheben?

Warum gibt MySQL den Fehler „Zeilengröße zu groß' (1118) aus und wie kann ich ihn beheben?

Linda Hamilton
Linda HamiltonOriginal
2025-01-04 07:53:35155Durchsuche

Why Does MySQL Throw a Row Size Too Large Error (1118) and How Can I Fix It?

MySQL-Fehler „Zeilengröße zu groß“ (Code 1118): Eine umfassende Erklärung

Beim Versuch, eine Tabelle mit einer erheblichen Anzahl von Spalten zu erstellen B. im Beispiel mit 325 Spalten, gibt MySQL möglicherweise einen Fehler aus, der darauf hinweist, dass die Zeilengröße den maximalen Grenzwert überschreitet. Dieser Fehler tritt häufig bei der Arbeit mit großen Tabellen auf und kann ziemlich frustrierend sein.

Einer der in der Frage erwähnten Schritte zur Fehlerbehebung umfasst die Änderung von VARCHAR-Spalten in TEXT oder BLOB. Die Datentypen TEXT und BLOB werden zum Speichern großer Datenmengen wie Text- oder Binärdaten verwendet und können im Vergleich zu VARCHAR mehr Daten aufnehmen. Darüber hinaus zielt die Einführung des Barracuda-Dateiformats in MySQL darauf ab, die Leistung und Skalierbarkeit insbesondere bei großen Tabellen zu verbessern.

Allerdings heißt es in der Frage, dass der Fehler auch nach Umsetzung dieser Maßnahmen weiterhin besteht. Um dieses Problem zu beheben, besteht eine andere Lösung darin, den MySQL-Konfigurationsparameter innodb_strict_mode zu ändern.

Innodb_strict_mode auf 0 setzen:

Gemäß der MySQL-Dokumentation führt das Setzen von innodb_strict_mode auf 0 zu Deaktivierungen bestimmte Prüfungen und ermöglicht eine mildere Handhabung der Datenvalidierung. Dies kann den Fehler beheben, der damit zusammenhängt, dass die Zeilengröße den Grenzwert überschreitet.

So ändern Sie innodb_strict_mode:

  1. Öffnen Sie die MySQL-Konfigurationsdatei (my.ini oder my.ini). .cnf).
  2. Suchen Sie den Abschnitt [mysqld].
  3. Fügen Sie Folgendes hinzu Zeile:
innodb_strict_mode = 0
  1. Speichern Sie die Konfigurationsdatei und starten Sie den MySQL-Dienst neu.

Sobald innodb_strict_mode auf 0 gesetzt ist, wird die Durchsetzung der Zeilengrößenbeschränkung gelockert , sodass die Tabelle ohne den vorherigen Fehler erstellt werden kann.

Es ist wichtig zu beachten, dass das Deaktivieren des strikten Modus Auswirkungen auf haben kann Datenintegrität und -genauigkeit. Daher wird empfohlen, diese Lösung sorgfältig zu verwenden und die Auswirkungen auf die Funktionalität der Datenbank zu berücksichtigen.

Das obige ist der detaillierte Inhalt vonWarum gibt MySQL den Fehler „Zeilengröße zu groß' (1118) aus und wie kann ich ihn beheben?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn