TYPO3-Backups durchführen
Notwendigkeit von Backups
Wir empfehlen jedem Kunden, ein externes Backup seiner Website vorzuhalten. Wobei mit "extern" gemeint ist, dass die Backup-Daten nicht nur auf einem anderen Server sondern möglichst auch bei einem anderen Provider - optimalerweise beim Kunden selbst - liegen. Wenn möglich, sollten Website-Betreiber eine Kopie auch auf einem externen Datenträger(z.B. CD) vorhalten, die nicht älter als ein Jahr ist.
Tägliche Backups sollten dagegen Sache des Web-Hosters(Provider) sein. Suchen Sie sich hierfür einen zuverlässigen Provider, der die Daten mindestens 7 Tage aufbewahrt.
Durchführung von Backups
Ein TYPO3-Backup ist relativ einfach durchzuführen. Es besteht aus der Sicherung der Datenbank sowie der TYPO3-Verzeichnisse fileadmin, typo3conf und uploads.
Die Datenbank sichern Sie mit folgendem Befehl:
mysqldump -h<HOST> -u<USER> -p<PASSWORT> <DATENBANK> -r <DATEINAME>.sql
HINWEISE:
(1) NICHT SO:
mysqldump -h<HOST> -u<USER> -p<PASSWORT> <DATENBANK> > <DATEINAME>.sql
⇒ das kann zu Konvertierungsproblemen mit UTF-8 führen!!!
(2) UTF-8 vs. latin-Zeichensätze
Wenn Ihre Datenbank nicht auf UTF läuft, müssen Sie den mysqldump-Befehl erweitern um:
mysqldump --default-character-set=latin1
Auf diese Weise werden die Daten richtig von mysqldump interpretiert und in die Datei geschrieben. Im Dumpfile selber sollten Sie:
SET NAMES='latin1'
am Anfang des Dumps löschen
Während Sie <DATEINAME>.sql frei wählen können, erhalten Sie die restlichen Parameter, in dem Sie sich Teile der LocalConfiguration.php ansehen:
less typo3/typo3conf/LocalConfiguration.php
Hier gibt es einen Absatz wie in etwa:
DB' => [
'Connections' => [
'Default' => [
'charset' => 'utf8',
'dbname' => '<DATENBANK>',
'driver' => 'mysqli',
'host' => '<HOST>',
'password' => '<PASSWORT>',
'port' => 3306,
'user' => '<USER>',
],
],
HINWEIS:
Im Falle eines Restores(wenn Sie die Daten also wieder auf dem selben oder einem anderen Server einspielen wollen), gehen Sie wie folgt vor:
- mysql -h<HOST> -u<USER> -p<PASSWORT> --default-character-set=utf8 <DATENBANK>
- mysql> SET names 'utf8'
- mysql> SOURCE <DATEINAME>.sql
Danach empfiehlt sich eine Komprimierung der Datei:
gzip <DATEINAME>.sql
Die Verzeichnisse werden am besten durch einen tar-Befehls archiviert und gleichzeitig komprimiert:
tar -cvfz <DATEINAME>.gz
<TYPO3_ROOT_VERZEICHNIS>/fileadmin
<TYPO3_ROOT_VERZEICHNIS>/typo3conf
<TYPO3_ROOT_VERZEICHNIS>/uploads
Beide Dateien sollten Sie nun durch ftp oder scp auf einen alternativen Standort kopieren.