Typo3 Update von 4.1 auf 4.3 Do, Jan 21. 2010
Da viele Typo3 Projekte noch auf der alten Version 4.1 laufen und diese Version offiziell nicht mehr unterstützt wird (deprecated), sollte jeder möglichst umgehend auf die aktuellste Version 4.3 updaten.
Weitere Gründe für ein Update auf 4.3 sind: verbesserte Usability, höhere Sicherheit, verbesserte Frontend-Bearbeitungsmöglichkeiten und weiterhin Patches von der Typo3-Community zu beziehen.
Das Update von 4.1 auf 4.3 ist gar nicht so schwer. Hierzu gibt es im Internet auch ein eBook von Dmitry Dupolev, das kostenlos herunter geladen werden kann. Aus diesem Buch kommen auch einige Hinweise hier in diesem Tutorial. Vielen Dank an dieser Stelle für die gute Vorlage.
Was könnte beim Upgrade von Typo3 schief schief gehen?
Da Typo3 ein sehr komplexes System ist und von vielen Entwicklern erstellt ist, werden Bugs meistens von der Community entdeckt. Typo3 gibt es jedoch in sehr vielen unterschiedlichen Variationen. Alle Konfigurationsmöglichkeiten und -kombinationen können daher nicht ausgiebig getestet werden.
- Typo3 4.1 hatte noch eine andere Zeichenkodierung als neuere Versionen. Beim Umstieg kommt es häufig zu Problemen mit dem Character Set. Einige Felder mit TypoScript wurden von Blob auf Text innerhalb der Datenbank umgestellt. Insbesondere deutsche Umlaute könnten hiervon betroffen sein.
- PHP Fehlermeldungen im Frontend und Backend
- SQL Fehlermeldungen im Frontend und Backend
- Weiße Seite ohne Fehlermeldungen im Frontend und Backend
- Benutzer können sich nicht einloggen
- Fehler durch Fehlkonfiguration der Vorgängerversion
In den meisten Fällen ist jedoch ein Upgrade einfach und problemlos.
Checkliste Upgrade
- Welchen momentanen Character Set/Database encodings hat die Datenbank (settings + data)?
- Hat Typo3 und die Datenbank das gleiche Character Set?
- Sind die Einstellungen der localconf.php Settings-Datei ausgedruckt/notiert?
- Ist die Datenbank gesichert?
- Sind alle Daten des CMS in eine Backup-Archiv-Datei geschrieben (z.B. Tarball, zip-Datei, ein anderes lokales Verzeichnis) oder eine identische Testumgebung eingerichtet?
- Entspricht die neue PHP Version den Mindestanforderungen der neuen Typo3 Version?
- Betriebssystem: Unix (bzw. Linux), Windows oder Mac
- Web-Server: Web-Server Apache, IIS
- PHP5.2 (bei Typo3 ab Version 4.2)
- Datenbank: MySQL
- ImageMagick (standalone)
- zlib (kompiliert mit PHP)
- GDlib/Freetype (kompiliert mit PHP)
- Apache mit mod_gzip/mod_rewrite
- ein PHP-cache
- Sind alle notwendigen PHP-Erweiterungen installiert?
- Gibt es Probleme mit Drittanbieter-Erweiterungen? Z.B. bei Debian-Systemen kann es durch eine libxml-Library zum Entfernen aller Ampersand-Character beim Parsen von XML-Daten kommen. Das kann zur Datenzerstörung innerhalb Typo3 führen.
- Gibt es alte Erweiterungen, die noch in Typo3 installiert wurden?
Upgrade-Leitfaden für Typo3
1) Updaten der Extensions auf dem alten Typo3
- Gehe in den Extensions Manager (Tools > Ext Manager) und prüfe die Versionen der Extensions.
- Insbesondere die Extensions mit dem Type local müssen geprüft werden.
- Wähle "Loaded Extensions" aus. (Menü Dropdown).
- Deinstalliere alle nicht benötigten Extensions (kleiner grüner Kreis mit -), anschließend auf "Remove Extension", um diese Extension zu deaktivieren. Go back anklicken. Anschließend auf "Install extensions" und dort die alte Extension auf dem Namen anklicken, nun rechts oben "Backup/Delete" im Dropdown-Menü auswählen. Danach auf "Delete Extensions from Server" klicken, damit wird die Extension vom Server aus dem System gelöscht. Mit OK bestätigen. und Go back anklicken.
- Wähle "Install Extensions" aus. (Menü Dropdown). Alle Extensions die nicht installiert sind (grauer Kreis mit +) und den Type local haben sollten entfernt werden.
- System Extensions können nicht gelöscht werden! (You cannot delete (and install/update) extensions in the System scope.)
- Gehe auf "Import Extensions", klicke dort auf "Retrieve/Update", um die aktuelle Extension List vom TER (Typo3 Extension Repository) zu laden.
- In das Eingabefeld den Extension key eintragen und dann auf "List or look up reviewed extensions" klicken.
- Wenn dort eine Meldung "No matchin extensions found" erscheint, kann es unterschiedliche Ursachen haben:
- Einstellungen falsch. Dazu einfach mal die Setting im Extension Manager prüfen:
- Webhoster sperrt den Zugriff oder falsch konfiguriert (Webhoster wechseln! oder Extension manuell von http://typo3.org/extensions/repository/ laden und t3x-Datei über "Upload Extension file directly" manuell hochladen)
- Einstellungen falsch. Dazu einfach mal die Setting im Extension Manager prüfen:
- In der Liste der Extensions finden sich dann je nach Suchbegriff, die Extensions, die aktualisiert werden können. Der grüne Doppelpfeil ist das Update-Symbol (für bereits vorhandene Erweiterungen). Sollte schon die aktuellste Version einer Erweiterung installiert sein, erscheint an dieser Stelle überhaupt kein Symbol.Ein roter Pfeil kennzeichnet eine neue Extension, die neu importiert wird.
Versionsvergleich:
Update einer Typo3-Extension im Extension Manager: - Nach dem Klick auf das Symbol kommt hoffentlich die Success-Meldung. Danach muss noch die Datenbank aktualisert werden. Dazu ganz nach unten Scrollen und den Update-Button anklicken:
Mit Go back wieder zurück und diese Prozedur für alle geladenen und aktualisierbaren Extensions wiederholden. - Typische Fehlermeldungen nach einem Update:
- Probably one or more required fields/tables are missing in the database!
Gehe in den Database Analyzer im Typo3 Install-Tool (Tools > Installation):
Dort den Compare-Link anklicken:
Im Bereich "Update database tables and fields" > "Table and field definitions should be updated"genügt in der Regel die Voreinstellung der angehakten Mysql-Updates, um die Datenbank auf den aktuellen Stand zu bringen:
Mit Klick auf "Write to database" bestätigen!
Jetzt sollte die Fehlermeldung verschwunden sein. - "Couldn't find the include_once statement for XCLASS!" oder "No XCLASS inclusion code found in file ..."
Hier fehlen unter Umständen noch einige Einträge in der Datenbank. Auch hierbei hilft eventuell das Install Tool und der Datenbank Analyzer mit dem Befehl "Import" weiter. Dabei wird der static data Dump importiert:
Wenn das alles nichts hilft, habe ich hier einen Eintrag in einem Forum gefunden:
Das spielt keine Rolle für Nicht-Entwickler. In diesem Falle ist die Extension einfach schlecht an die Umgebung angepasst, und kann ohne Weiteres verwendet werden.
Für Programmierer: Dieser Fehler kann man entfernen, in dem man die Klasse in XCLASS inkludiert.Damit macht man die Klasse für die Funktionen der XCLASS verfügbar. - Falls mal eine Extension einen schweren Fehler verursacht und die Seite weiß bleibt (bei mir hatte die Extension lib einen Bug), dann hilft immer noch die Extension manuell zu deaktivieren/deinstallieren:
Zur Deinstallion der Extension die Datei typo3conf/localconf.php editieren und die Extension dort in der Variable $TYPO3_CONF_VARS['EXT']['extList'] herauslöschen. Danach die beiden temp_CACHED-Dateien löschen.
- Probably one or more required fields/tables are missing in the database!
- Damit sind die Updates komplett abgeschlossen
2) Neue Quellen für Typo3 laden / Typo3 4.3 Update-Dateien
Genau wie bei einer Neuinstallation wird das komplette Typo3 von der Herstellerseite typo3.org geladen. Das Dummy-Package wird beim Update nicht benötigt.
Typo3 Download-Seite:
http://typo3.org/download/packages/
oder direkt Typo3 Version 4.3 laden:
http://prdownloads.sourceforge.net/typo3/typo3_src-4.3.1.zip?download
3) Typo3 Upgrade Checkliste prüfen
Spätestens jetzt sollte nochmal in der Checkliste alles geprüft werden und eine Datenbank-Sicherung, sowie eine Dateisicherung vorgenommen werden. Hilfreich ist auch die Prüfung der PHP-Installation und der geladenen Module/Libraries mittels einer phpinfo-Datei.
4) Überschreiben der alten Installation
Nach dem Download der Source-datei wird diese über das alte Verzeichnis kopiert. Die Dateistruktur wird dabei komplett überschrieben. Eine Wiederherstellung ist ab diesem Zeitpunkt nur noch über das vorher angefertigte Backup möglich.
5) Aktualisierung der Datenbank
Die Datenbank wird über das Install-Tool aktualisiert. Das Tool findet sich unter /typo3/install/ auf dem Webserver. Nach dem Einspielen der kompletten Sourcen wird man im Backend von einer wichtigen Meldung empfangen:
Important Notice!
This installation is not configured for the TYPO3 version it is running. If you did so intentionally, this message can be safely ignored. If you are unsure, visit the Update Wizard section of the Install Tool to see how TYPO3 would change.
Danach muss eine Datei mit dem Dateinamen ENABLE_INSTALL_TOOL im Ordner typo3conf erstellt werden:
The Install Tool is locked.
Fix: Create a file typo3conf/ENABLE_INSTALL_TOOL
This file may simply be empty.
For security reasons, it is highly recommended to rename
or delete the file after the operation is finished.
If the file is older than 1 hour TYPO3 has automatically
deleted it, so it needs to be created again.
Typo3 löscht die datei automatisch, wenn diese älter als eine Stunde ist.
Danach wird man vom Update Wizard begrüßt:
Zuerst sollte man im "Database Analyser" prüfen, ob die Datenbank Konfiguration korrekt läuft:
Als nächstes auf "Compare" klicken:
Es erscheint jetzt eine lange Liste mit den zu aktualisierenden Datenbankeinträgen. Alle Datenbankänderungen, die bereits vorangehakt sind, sind für das Update zwingend notwendig. Im Abschnitt Removing Tables lassen sich auch nicht mehr benötigte Datenbankeinträge umbenennen und später löschen.
Nach dem Klick auf "Write to Database" sind unter Umständen weitere Änderungen in der Datenbank notwendig, so dass diese Prozedur ein paar mal wiederholt werden sollte, bis Typo3 keine weiteren Änderungen von sich aus vorschlägt (keine gesetzten Haken).
Alle Änderungen führen schließlich zur Erfolgsmeldung: Table and field definitions are OK.
6) Installation neuer static Tables
Die Tabelle "static_template" und andere "static_" Tabellen der Datenbank sollten immer über den Database Analyser aktualisiert werden. Diese Informationen werden von den Typo3-Releases als statische Information verbreitet und in das System gespeichert.
Dazu wählt man im Database Analyser den Button "Import" im Bereich "Dump static Data":
Dabei werden alle Date, die zuvor ausgewählt wurden in das neue Typo3 importiert:
7) Löschen/Leeren der Cache-Tabellen, typo3temp und den Benutzereinstellungen
Man sollte generell nach dem Update die Cache-Tabellen leeren:
8) Der Update Wizard
Bei großen Versionssprüngen, wie z.B. von Typo3 4.1 auf Typo3 4.3 muß der Update Wizard genutzt werden, um alle Einstellungen in Einklang zu bringen. Z.B. wurde das HTML Markup des CSS styled content auf ein semantisch besseres Markup umgestellt. Die Änderungsvorschläge des Update Wizards können akzeptiert werden, wenn dies für das System oder die Frontend Website korrekt ist.
Step 1: changeCompatibilityVersion
Umstellung der Kompatibilitätsversion:
Step 2: Configuration of updates
Jeder Schritt muss bestätigt werden oder man wählt am Ende der Liste "Check all". Optional kann man sich auch die SQL-Queries anzeigen lassen:
Ein Klick auf "Perform Updates" erzeugt die Meldung Update Successful von Step 3.
Step 3: Perform Updates
Der Update Wizard zeigt alle Änderungen, die im System vorgenommen werden müssen übersichtlich untereinander an. Mit Next wird der nächste Block ausgewählt, mit Step 2 wird die Änderung bestätigt und mit Step 3 ist das Update des Elements abgeschlossen.
Update Wizard:
- installSystemExtensions
- installNewSystemExtensions
- changeImagecolsValue
- installVersioning
- Final Step
Wenn alle Elemente verschwunden sind (bis auf changeCompatibilityVersion und Final Step, die beiden bleiben bestehen), und die Meldung im Database Analyser auf Erfolg steht (s.o.), dann ist das Update auf Typo3 Version 4.3 erfolgreich abgeschlossen.
Jetzt noch mit Clear Cache rechts oben den Seitencache und die Cache-Konfigurationsdateien leeren:
9) Prüfung der Changelog und News.txt
Im Typo3 Wurzelverzeichnis liegen die Dateien changelog und News.txt, in die man noch einen Blick wagen sollte, um Hinweise zur neuen Version nicht zu verpassen.
10) Prüfung der Website
- Sieht die neue Typo3 4.3 Website korrekt aus?
- Gibt es Fehlermeldungen im Frontend oder Backend?
- Funktionieren alle Formularfelder unter Typo3 4.3 fehlerfrei?
Alle Fehler nach dem Update auf Typo3 Version 4.3 sollten korrigiert werden.
#1 - Joe 12.10.2010 11:55 -
Super Anleitung. Herzlich Dank für diese ausführliche Step-by-Step-Anleitung. Auch für einen Amateur wie mich hat das Update von 4.1 auf 4.4 fantastich geklappt. Weiter so. Joe
#2 - Kristin 30.01.2011 23:21 -
Super Anleitung. Nur das vorzeitige Update der Extension mm_forum scheint bei mir schief gegangen zu sein. Forum jedenfalls nicht mehr verfügbar und interne Fehlermeldungen. Muss ich mir in den nächsten Tagen noch mal vornehmen.
Bookmarks:
Delicious Facebook Google Yahoo Mr. Wong Linkarena Digg