Fehler „MySQL-Zeilengröße zu groß“: Adressierung des 1118-Codes
Beim Erstellen einer MySQL-Tabelle mit einer großen Anzahl von Spalten kann es zu einem Fehler kommen der Fehlercode 1118: „Zeilengröße zu groß.“ Dieser Fehler weist darauf hin, dass die kombinierte Größe der Spalten eine durch das Standardzeilenformat auferlegte Beschränkung überschreitet.
Informationen zur Zeilengrößenbeschränkung
In MySQL die Zeilengrößenbeschränkung variiert je nach Zeilenformat. Das Standardzeilenformat „Compact“ hat eine Größenbeschränkung von 8126 Byte. Andere Zeilenformate wie „Komprimiert“ und „Dynamisch“ bieten größere Grenzen.
Spaltentypen optimieren
Um den Fehler 1118 zu beheben, sollten Sie die Datentypen Ihrer Spalten optimieren. Beispielsweise kann das Ersetzen von VARCHAR-Spalten durch TEXT die Zeilengröße erheblich reduzieren. Erwägen Sie außerdem die Verwendung von BLOB- oder LONG-Typen für große Datenwerte.
Barracuda-Dateiformat aktivieren
MySQL 5.7 führte das Barracuda-Dateiformat ein, das verbesserte Leistung und Flexibilität bietet. Durch die Aktivierung von Barracuda kann das Problem der Zeilengröße gemildert werden, indem ein größerer Zeilenspeicher ermöglicht wird. Um Barracuda zu aktivieren, fügen Sie die folgenden Attribute zu Ihrer my.ini-Datei hinzu:
innodb_file_per_table=1 innodb_file_format=Barracuda innodb_file_format_check = ON
Strikten Modus deaktivieren
Als letzten Ausweg können Sie versuchen, den strikten Modus zu deaktivieren für MySQL. Dies kann jedoch zu Problemen mit der Datenkorruption führen. Um den strikten Modus zu deaktivieren, fügen Sie das folgende Attribut zu Ihrer my.ini-Datei hinzu:
innodb_strict_mode = 0
Dadurch kann MySQL die Datensatzgrößenprüfung ignorieren und Sie können Tabellen mit größeren Zeilen erstellen.
Hinweis: Das Ändern von Serverparametern wie innodb_strict_mode sollte mit Vorsicht und nur unter Berücksichtigung der potenziellen Risiken und Auswirkungen auf Ihre Daten erfolgen.
Das obige ist der detaillierte Inhalt vonWie löst man den MySQL-Fehler 1118: „Zeilengröße zu groß'?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!