ERROR 1118 (42000) at line 8900: Row size too large (> 8126). Changing some columns to TEXT or BLOB may help. In current row format,
BLOB prefix of 0 bytes is stored inline.
Die Lösung
Hierzu in der Datei my.cnf im Abschnitt [mysqld] folgenden Konfigurationsparameter hinzufügen:
innodb_strict= 0
default_storage_engine=MyISAM
Datenbankserver neu starten und den dump der SQLDatei importieren.
Falls immer noch ein Fehler auftritt, eine Kopie der SQLDatei erstellen und
sed -i 's/ENGINE=InnoDB/ENGINE=MyISAM/g' SQLFILE
ausführen und die Datei importieren.
Nach dem Import die Konfigurationsparameter in der Datei my.cnf wieder entfernen und den Datenbankserver neu starten.
Will man das wirklich? MyISAM kann keine referenzielle Integrität. MyISAM kann kein row locking. Nein, man will MyISAM nicht mehr. MariaDB 10.0 hat den oben beschriebenen Bug nicht.
Hallo Jens, stehe da voll und ganz bei dir.
War aber an dem Server nicht möglich und in dem Fall die einzige Lösung.
Und immer wenn ich eine Frage mehr als einmal gestellt bekam schrieb ich sie in das Blog.
Ich hatte selbst vor am Ende zu schreiben, dass dies der dreckige Weg ist.
ps: Lustiger weise ist dort ein 16.04.7 LTS mit MariaDB 10.0.38 am laufen. Warum auch immer. Es fällt dort so auf die Nase.
IMO wäre in Upgrade und eine andere Installation besser