Joomla upgrade 2.5.28 auf 3.5.1: Index column size too large. The maximum column size is 767 bytes.

Moderator: General Support Moderators

Forum rules
Forumregeln
Locked
kaktusralf
Joomla! Fledgling
Joomla! Fledgling
Posts: 2
Joined: Tue Apr 27, 2021 7:08 pm

Joomla upgrade 2.5.28 auf 3.5.1: Index column size too large. The maximum column size is 767 bytes.

Post by kaktusralf » Tue Apr 27, 2021 7:13 pm

Hallo Joomla-Community,

habe eine ziemlich alte Vereins-Webseite zur Pflege übernommen, weil der alte Webmaster nicht mehr erreichbar war. Die Webseite wurde wohl früher mal schon von einer ursprünglichen 1.7.0-Version von Joomla auf die 2.5.7 hochgezogen. Da diese alte Version zum einen nicht mehr aktuell ist und bestimmt auch die eine oder andere Sicherheitslücke hat, hatte ich leichtsinnigerweise vorgeschlagen, die Installation mal zu aktualisieren. Eine Anleitung, dass das möglich ist hatte ich ja hier (https://docs.joomla.org/Joomla_2.5_to_3 ... gration/de) gefunden. Bin aber leider auch kein Fachmann...
Der erste Schritt, ein Upgrade auf 2.5.28 lief auch völlig problemlos. Danach habe ich noch eine Datenbankreparatur durchgeführt, weil die angezeigte DB-Version nicht 2.5.28 war, aber dann sah alles ok aus und hat auch funktioniert.
Nun noch beim Update-Server "Short Term Support" gewählt, aber es wurde mir trotzdem kein Update auf die 3.5.1 angeboten. Also nochmal gegoogelt. Ich habe dann erst mal aufgeräumt: Alle nicht benutzten Artikel, Menüs etc. gelöscht und die Papierkörbe gelöscht. Alle Erweiterungen, die ich als irrelevant identifiziert habe, auch deaktiviert oder gleich gelöscht. Aber kein Update wurde angeboten. Also noch das "Remember-Me"-Plugin deaktiviert, das Error Reporting auf "Maximun" gesetzt, aber es wurde immer noch kein Update angeboten - man probiert das dann ja alles aus, auch wenn man nicht glaubt, dass das der Grund ist. Es steht ja andererseits auch nicht grundlos da. Dann habe ich mal versucht so ein Update manuell durchzuführen - was aber auch kläglich scheiterte. Also wieder die Sicherung eingespielt nochmal aufgeräumt und die Einstellungen entsprechend der Anleitung vorgenommen - und das Thema erstmal auf später verschoben.

So etwa drei Wochen später - ich hatte wieder ein wenig Zeit - wollte ich es nochmal angehen. Und siehe da - warum auch immer - jetzt wurde die 3.5.1 als Update angeboten. Also nochmal eine Sicherung erstellt und auf "Update" geklickt. Erst lief auch alles recht reibungslos. Aber bei ca. 86% kam dann plötzlich die Fehlermeldung "Index column size too large. The maximum column size is 767 bytes. SQL=ALTER TABLE `#__menu` ENGINE=InnoDB;". Also wieder gegoogelt, auch hier im Forum. Ich habe nun diverse Dinge versucht, aber die Datenbank-Parameter und die Tabellen-Parameter, die ich in den Posts gefuden hatte, scheinen OK zu sein. Im Update-Log-File nachgesehen, aber da steht nur, dass die zuletzt ausgeführte Query diejenige zur Languages-Tabelle war. Alphabetisch wäre dann vermutlich die Menu-Tabelle dran, was ja auch zur Fehlermeldung passt.

Die Seite liegt übrigens bei Strato, die PHP-Version ist 5.3 (wobei ich aber auch schon 5.6 ohne für mich sichtbaren Effekt probiert hatte), die MySQL-Version ist 5.6.

Ich bin jetzt echt ratlos, was ich noch probieren könnte, hat irgendjemand eine Idee?
Danke schon mal im Voraus!

VG, Ralf

kaktusralf
Joomla! Fledgling
Joomla! Fledgling
Posts: 2
Joined: Tue Apr 27, 2021 7:08 pm

Re: Joomla upgrade 2.5.28 auf 3.5.1: Index column size too large. The maximum column size is 767 bytes.

Post by kaktusralf » Sat May 08, 2021 9:13 am

Hallo zusammen,
das Problem konnte nach einigen Recherchen und Herumprobieren nun behoben werden. Ich hatte folgende Hinweise zusätzlich zu den existierenden Anleitungen noch gefunden und probiert:
- Falls die Seite bereits von der Version 1.6/1.7 migriert wurde, via FTP alle sql-Files löschen, sie mit 1 beginnen. Die Files befinden sich hier: /administrator/components/com_admin/sql/updates/mysql/1.*.sql
- Parameter setzen in der php.ini: max_execution_time = 600;
Das brachte aber noch nicht den Erfolg. Erst als ich zusätzlich VOR dem Update auf 3.5.1 folgende beiden SQL-Befehle ausgeführt hatte, lief das Update durch:
ALTER TABLE `jos_menu` auto_increment = 200 ROW_FORMAT = FIXED;
ALTER TABLE `jos_menu` ENGINE = INNODB ROW_FORMAT = DYNAMIC;
(Wobei das Präfix 'jos' natürlich auf jeweilige eigene Installation angepasst werden muss.)
VG, Ralf


Locked

Return to “Installation und erste Schritte”