I've just faced the task to move the most important data of a TYPO3 installation. These were
the challenges of this task:
- The installation is far too big to export the tree as a T3D file (even when increasing
memory_limit, max_execution_time and max_input_time in php.ini).
- The old installation was still running on MySQL 4.0 using a Windows 1252 charset
(disguised as ISO8859-1) while we wanted UTF-8 on the new site.
- Some tables (like tt_content) also are too big to import them in phpMyAdmin.
- After the import into the new system, the page tree was empty at first. And the backup
had a size of 0 bytes. :-(
- The installation is so big that creating the reference index fails with a timeout.
So that's how I proceeded:
- Group the tables packages and export them using phpMyAdmin (with the DROP TABLE
option so I wouldn't have any garbage in the new tables). I used the following packages:
- pages, content, templates and domains
- FE and BE users and user groups
- extensions
- tt_address
- If the tables are packed, unzip them using
gunzip
.
- Recode the tables to UTF-8:
recode windows-1252..utf8 *.sql
- Import the tables, each at a time:
mysql -u typo3 -p typo3
--default_character_set utf8 < content.sql
- In the TYPO3 install tool, do a DB compare to add the missing DB columns so that the
page tree will be visible again. :-)
- Copy the files in
fileadmin
.
- Create a non-admin BE user
_cli_lowlevel
. Then update the reference index
on the command line:
php-cli ./cli_dispatch.phpsh lowlevel_refindex -e
Ich stand gerade vor der Aufgabe, die wichtigsten Daten einer TYPO3-Installation umzuziehen.
Dabei waren folgende Herausforderungen zu meistern:
- Die Installation ist viel zu groß, um den Baum als T3D zu exportieren (sogar wenn ich
memory_limit, max_execution_time und max_input_time in der php.ini hochsetze).
- Die alte Installation läuft noch mit MySQL 4.0 und dem Zeichensatz Windows 1252
(verkleidet als ISO8859-1), während wir auf der neuen Installation UTF-8 haben wollen.
- Einige Tabellen (zum Beispiel die tt_content) sind ebenfalls viel zu groß, um sie in
phpMyAdmin zu importieren.
- Nach dem Import ins neue System war der Seitenbaum zuerst komplett leer. Und das Backup
hatte eine Größe von 0 Bytes, wie sich dann herausstellte. :-(
- Die Installation ist so groß, dass das Erstellen des Referenzindexes mit einem Timeout
abbricht.
Ich bin schließlich folgendermaßen vorgegangen:
- Die Tabellen in halbwegs sinnvoll zusammenhängenden Paketen in phpMyAdmin exportieren
(inklusive der DROP TABLE-Option, damit ich keinen Müll in den neuen Tabellen
habe). Ich habe die folgenden Tabellenpakete geschnürt:
- Seiten, Inhalte, Templates und Domains
- FE- und BE-User und Usergruppen
- Extensions
- tt_address
- Die Tabellen mit
gunzip
entpacken, falls sie gepackt waren.
- Die Tabellen nach UTF-8 umkodieren:
recode windows-1252..utf8 *.sql
- Die Tabellen eine nach der anderen importieren:
mysql -u typo3 -p typo3
--default_character_set utf8 < content.sql
- Im TYPO3-Install-Tool den DB-Compare machen, damit die fehlenden Spalten in der DB
angelegt werden und der Pagetree wieder zu sehen ist. :-)
- Die Dateien in
fileadmin
kopieren.
- Einen Nicht-Admin-BE-User
_cli_lowlevel
anlegen und dann auf der
Kommandozeile den Referenzindex aktualisieren:
php-cli ./cli_dispatch.phpsh
lowlevel_refindex -e
Oliver @ 18:54 | Permalink
|
0 comments/Kommentare
|