Es erfordert mehr als nur diese beiden Einstellungen...
SET GLOBAL innodb_file_format=Barracuda;
SET GLOBAL innodb_file_per_table=ON;
SET GLOBAL innodb_large_prefix=1;
logout & login (to get the global values);
ALTER TABLE tbl ROW_FORMAT=DYNAMIC; -- or COMPRESSED
Vielleicht brauchen Sie nur ROW_FORMAT=...
hinzuzufügen zu Ihrem CREATE TABLE
.
Diese Anleitung wird für 5.6.3 bis 5.7.7 benötigt. Beginnend mit 5.7.7 behandelt das System standardmäßig größere Felder korrekt.
Alternativ könnten Sie einen "Präfix"-Index verwenden:
INDEX(column(191))
(Aber die Präfixindizierung ist in vielerlei Hinsicht fehlerhaft.)
"Wenn der Server später ein höheres Tabellenformat erstellt, wird innodb_file_format_max auf diesen Wert gesetzt" impliziert, dass diese Einstellung kein Problem darstellt.