Schwerpunkt:: TYPO3 CMS - Versionsupgrade 6.2 auf 7



Update von Version 6.2 auf 7 - Schritt 1: v6.2 ist Pflicht!

ältere TYPO3 6 LTS Installation auf Version 6.2.31 bringen

Einleitung

Alle Jahre wieder läuft auch für die treueste TYPO3-Installation mit Langzeitunterstützung (LTS) der Support aus. So auch für TYPO3 6.2 LTS, im März 2017.
Ein Upgrade auf Version 7 LTS bringt wieder Sicherheit bis November 2018 und natürlich auch einige neue Features und Verschönerungen, die in solchen neuen Releases TYPO3 noch besser machen.
Auch ist dieses Upgrade als Zwischenschritt erforderlich, um insgesamt auf Version 8 upzugraden.

TYPO3 mit all seinen Möglichkeiten ist nicht trivial, insofern ist solch ein Update nicht unbedingt im Vorbeigehen zu erledigen, sondern es sollte gut vorbereitet werden. Insbesondere wenn das CMS mit Extensions angereichert ist.

Ausgangspunkt für die Vorbereitung sollte zunächst eine Google-Suche zum Thema sein.
Um so eine Suche jetzt durchzuführen, hier klicken.

Immer wieder hervorragend geeignet für Recherchen zum Thema TYPO3 sind die Seiten von jweiland.net.
Zum Thema Update von 6 auf 7 finden sich hier gute Informationen.

Die neuesten Release-Informationen und Installations-Ressourcen finden sich im Downloadbereich von typo3.org, hier die Sprungmarke dorthin.
Im April 2017 kam der letzte Maintenance Release zu TYPO3 6.2 heraus, die Versionsnummer 6.2.31 (Artikel auf typo3.org)
Ende Juli 2018 ist die Version 7.6.31 aktueller LTS-Release.

Älteres TYPO3 auf Version 6.2.30 upgraden

Zunächst sollte die bislang eingesetzte TYPO3-Installation auf die Version 6.2.31 aktualisiert werden. Das habe ich im vergangenen Jahr bei drei meiner Installationen live im Webspace durchgeführt, zeitweise ging mir ganz schön die Muffe, weil die Websites anschließend weiße Flächen waren oder nur noch Fehlerblöcke mit SQL-Statements anzeigten. Mit etwas Pioniergeist und den richtigen Suchphrasen gelang mir die Operation.

Nur mit Netz und doppeltem Boden
Zur Sicherheit sollte zuvor in jedem Fall sowohl ein Backup der Verzeichnisstruktur, als der der zuständigen Datenbank erfolgen. Läuft etwas schief, dann kann der Status Quo des CMS wiederhergestellt werden. Für mich zumindest in der Theorie, praktisch habe ich es noch nicht probiert, es scheint mir jedoch aufgrund der Komplexität des Systems fast unglaublich, aus einer Archivdatei und einem SQL_Dump alles vollends problemfrei in dem leeren WebSpace eines Servers vollfunktional aufzuspannen. Diese Erfahrung fehlt mir noch.


Bei HostEurope bietet sich dafür ein Backup on the fly an, das vom entsprechenden Verzeichnis auf dem Webspace und der dazugehörenden Datenbank erstellt wird.

Produktverwaltung - Webhosting - Paketname - Restore & Backup - Backup on the fly

Sichern:

  • Webspace /www/___typo_15_
  • Datenbank db1234567-typo15

auf Backup erstellen klicken

Die komprimierte Datei wird auf dem Server gespeichert und kann anschließend per FTP-Programm heruntergeladen werden. Vorhandene noch nicht gelöschte "Backup on the fly"-Dateien werden beim nächsten "Backup on the fly"-Vorgang nicht mitgesichert.
Die "Backup on the fly"-Datei mit dem Namen "Backup_YYYY-mm-dd-hh-mm-ss.tgz" liegt nun im Stammverzeichnis Ihres Webservers und kann per FTP-Programm heruntergeladen werden. Das erstellte Backup wird automatisch vom System wieder gelöscht. Bitte beachten Sie daher die Hinweise im FAQ-Bereich

 


Nestpflege vor dem Flug
Mal ehrlich gesagt, habe ich mich in den Jahren nach der Erstinstallation 2014 kaum um die Pflege und Aktualisierung der TYPO3-Kernanwendung und ihrer Erweiterungen bemüht.
So galt es eine Version 6.1.7, eine 6.1.8 und eine 6.2.12 zu aktualisieren.

Folgende Abläufe lese ich aus meinen Aufzeichnungen zu den Installationen:

  1. Im vorhandenen System das Install-Tool aufrufen und den Database-Analyzer ausführen.
    Nun wird es knifflig. Als Ergebnis dieses Aufrufs liefert TYPO3 eine Liste mit SQL-Statements, die die Datenstruktur einiger Datenbanktabellen modifiziert. Aber wie weiss ich welche Tabellen von TYPO3, welche von Drittanbieter- oder eigenen Extensions sind?
    Einem Wechsel der ENGINE von MyISAM auf InnoDB stimme ich vertrauensvoll zu.
    Eigene Extensions geben ihren Namen an Tabellen weiter. Daher sollten Tabellen mit entsprechenden Bezeichnungen (tx_NameMeinerExtension_domain_model_...) unbedingt erhalten bleiben. Die kennt der Wizard meistens nicht, daher sortiert er sie aus und bietet sie zum Löschen an. Nicht löschen!
    Ich bin dann mit Gefühl vorgegangen. Beim ersten Mal in Unkenntnis einfach angehakt und unbedarft umbenannt und sogar gedropt! Mein Backup rettete mir die CoolUri-Funktionalität einer Website durch Zurückspielen zweier Tabellen. Bei der letzten Aktualisierung wählte ich viel bedachter.
    Manche Tabellennamen sind einfach bekannt, wenn TYPO3 zum Leben gehört.
     
  2. Im Erweiterungsmanager des Backends sollte von Zeit zu Zeit unter dem Punkt Erweiterungen hinzufügen das TYPO3-Erweiterungs-Repository (TER) durch Klick auf die Schaltfläche Jetzt aktualisieren auf den neuesten Stand gebracht werden, das geht wohl nicht automatisch.
    Abschließend erscheinen nach Auswahl von Erweiterungen verwalten in der Liste alle installierten Erweiterungen. Die erste Spalte dieser Tabelle gibt Auskunft über verfügbare Updates zu jeder Extension. Die angezeigte Neueste muss jedoch nicht unbedingt die passende sein.
    Also Klicke ich auf den ersten Spaltenkopf Akt. und sortiere mir dadurch die potentiellen Update-Kandidaten in der Liste nach oben.
     
  3. Für jede zu aktualisierende Erweiterung kopiere ich mir den Schlüssel (z.B. extension_builder ), wechsele ins Modul Erweiterungen hinzufügen und füge dort den Schlüssel ins Suchfenster ein und lasse mir die Ergebnisse anzeigen. In der dann erscheinenden Liste klicke ich auf den zugehörigen Eintrag in der Spalte Version. Nun werden alle Informationen zur Erweiterung und deren Versionsreleases mit Kommentaren angezeigt.
    Im Kommentartext findet sich oftmals eine Angabe zur Kompatibilität mit TYPO3-Versionen. Hier die passende, höchste Versionsnummer auswählen und in der Spalte Aktionen die Extension importieren und installieren. Aufwändige Recherchen im Manual schreckten mich ebenfalls ab, diesen Versionssprung jetzt auf die Schnelle noch mitzunehmen. Bestenfalls dann nach jedem Update noch die Funktionalität der jeweiligen Erweiterung prüfen, ebenso wie eventuell erforderliche oder nun mögliche Konfigurationsanpassungen vornehmen. Das also für jede Erweiterungen der Liste.
     
  4. Der Upgrade-Wizard im Installations-Tool ist der nächste Gefährte auf dem Weg zum frischen TYPO3. Dieser kann in der Regel durchgeklickt werden und zeigt zum Abschluss keine Updateschritte mehr nötig, starte jetzt den Database-Analyzer.
    Dieser Datenbankanalyseassistent ist, wie schon oben erwähnt, mit Vorsicht zu geniessen.
    Nach diesen Vorbereitungsschritten kann jetzt das eigentliche Update auf Version 6.2.30 erfolgen.

Nicht mehr kleckern, sondern klotzen
Waren die letzten Schritte der Vorbereitung ziemlich speziell und auch zum Teil richtig heikel, so folgt nun der gröbere Teil des Updates und der ist relativ einfach. Mit Symlinks noch einfacher, doch soweit bin ich jetzt noch nicht.

Ran ans Werk mit einem FTP-Client, wie beispielsweise Filezilla.
Die Verzeichnisse t3lib und typo3 werden umbenannt (z.B. t3lib_server_bis_2017-03-04),
auch die index.php derart umbenennen (z.B. index.php_server_bis_2017-03-04.mybackup ).

Auf dem eigenen Computer gilt es nun lokal die Installationsressource typo3_src-6.2.30.zip zu Öffnen und zu entpacken.
Erforderlich sind der Ordner typo3 und die Datei index.php.
Diese beiden Verzeichnisobjekte werden nun mit Filezilla ins TYPO3-Installationsverzeichnis auf den Webspace hochgeladen. Sie ersetzen dort die umbenannten Objekte.
Das kann etwas dauern. Eleganter wäre eine Lösung direkt über die SSH-Shell, haben wir jetzt aber nicht.

Anschließend könnte die Internetpräsenz wieder funktionieren, das war's nämlich schon. Um die Unterbrechung während des Updates kenntlich zu machen, wäre es sinnvoll für die Dauer der Maßnahme ein entsprechendes Error-Dokument anzuzeigen. Oder erst die Objekte hochzuladen (unter anderen Namen) und dann kurzzeitig umzubenennen.

Und nochmal das Install-Tool
Zum Abschluss der Aktualisierung wird nochmal das Installations-Tool aufgerufen.
Der Upgrade-Wizard hilft hier wiederum bei den ersten Schritten, dann der Database-Analyzer, zu finden über Important Actions. Dort Compare current database with specifications klicken, und behutsam die Datenbankmanipulationen auswählen und durchführen.
Nun noch einen Check for broken exensions veranlassen und Clear all cache klicken.
Ein abschließendes Core-Update zeigt keine weiteren Updates an.

Damit ist das Wichtigste getan, TYPO3 kann nun auf Version 7 gehoben werden.
Unter System environment und Folder structure finden sich unter Umständen noch Hinweise zu Fehl- oder Falschkonfigurationen, die angepasst werden sollten.

Wahrscheinlich hatte ich Glück, dass erst im Frühjahr 2014 TYPO3 nach 2002 wieder meinen Weg kreuzte. Die Aktualisierungen von CMS-Veteranen vor der Version 6 sind wohl noch heikler und aufwandsintensiver.

Eine gute Anleitung zur Vorbereitung des Updates findet sich weitergehend noch hier.

Wie eine Kopie eines TYPO3-Projekt via SSH-Zugang erstellt werden kann steht hier.

Älteres TYPO3 auf Version 6.2.30 upgegraded