Zum Inhalt springen

Automatisches TYPO3 6.x Backup per Cronjob bei Mittwald

Dieses Backupscript entnimmt alle relevanten Daten aus der TYPO3 6.x LocalConfiguration.php Datei.

1. Erstelle ein Verzeichnis /html/typo3-backup

2. Erstelle in /html eine Datei daily.sh mit folgendem Inhalt:

#!/bin/bash

# Variablen fuer Datum
dayofmonth=`date ‘+%d-%m-%Y’`
dayofweek=`date ‘+%A’`

PFAD_T3=/html/typo3/
PFAD_BACKUP=/html/typo3-backup

SITENAME=`cat $PFAD_T3/typo3conf/LocalConfiguration.php | grep  ‘sitename’ | cut -d “‘” -f 4 `
DB_NAME=`cat $PFAD_T3/typo3conf/LocalConfiguration.php | grep  ‘database’ | cut -d “‘” -f 4 `
DB_USER=`cat $PFAD_T3/typo3conf/LocalConfiguration.php | grep ‘username’| cut -d “‘” -f 4`
DB_PASSWORD=`cat $PFAD_T3/typo3conf/LocalConfiguration.php | grep -w ‘password’| cut -d “‘” -f 4`
DB_HOST=`cat $PFAD_T3/typo3conf/LocalConfiguration.php | grep ‘host’| cut -d “‘” -f 4`

echo “——————————–”
echo “Sicherungsscript fuer: $SITENAME”
echo “——————————– ”
echo “Typo3 Auftritt: $SITENAME”
echo “Tag des Monats: $dayofmonth”
echo “Tag der Woche:  $dayofweek”
echo “——————————–”
echo ” Kontrolle der Verzeichnisse bzw. der Typo3 Daten”
echo “——————————– ”
echo “Typo3-Pfad $PFAD_T3”
echo “Typo3-Backuppfad $PFAD_BACKUP”
echo “Datenbank Name $DB_NAME”
echo “Datenbank USER $DB_USER”
echo “Datenbank Passwort $DB_PASSWORD”
echo “Datenbank Host $DB_HOST”
echo “——————————–”
echo “Erstelle Sicherung der Datenbank…”
mysqldump -u $DB_USER -p$DB_PASSWORD -h $DB_HOST $DB_NAME | gzip > $PFAD_BACKUP/$dayofmonth.database.sql.gz

echo “——————————–”
echo “Sichere Dateien”
tar cfz $PFAD_BACKUP/$dayofmonth.files.tar.gz $PFAD_T3 –exclude=backup –exclude=crawler –exclude=typo3_src-* –exclude=typo3temp

#########################
# Finde alles was älter als 7 Tage ist:
# /usr/bin/find $PFAD_BACKUP/ -mtime +7 -type f -exec /bin/ls {} \;
echo “LÖSCHE alles was aelter als 3 Tage ist”
/usr/bin/find $PFAD_BACKUP/ -mtime +3 -type f -exec /bin/rm {} \;

3. Gehe in das Mittwald Kundencenter und erstelle einen neuen Cronjob der 1x Täglich (z.B. um 2 Uhr) ausgeführt wird:
– Serverseitiger Aufruf
– Pfad: /html/daily_backup.sh
Zum Testen des Scripts kann man dieses auch vorher “von Hand” in Putty ausführen.
Man sollte sich dabei im html Verzeichnis “befinden” 🙂

Zurückspielen des Backups

Es ist sinnfrei ein Backup zu haben wenn man nicht weiss wie man es zurückspielt 🙂

1. Datenbank zurückspielen:
mysql -h $db_host1 -u $user1 -p$pass1 $db1 < backup/[NAME DES DATENBANKDUMPS].sql

2. Zurückspielen der TYPO3 Verzeichnisstruktur:

tar xzf /html/typo3-backup/[NAME DER BACKUPDATEI].gz

Damit wird in das Verzeichnis htm/typo3-backup die TYPO3 Verzeichnisstruktur entpackt.

Das aktuelle TYPO3 Verzeichnis nun löschen oder umbenennen und das soeben entpackte dorthin verschieben.

Fertig.

Sei der Erste der einen Kommentar abgibt

Schreibe einen Kommentar