[TYPO3-german] All Caches via Shell script leeren

Robert Markula robert.markula at gmx.net
Wed May 27 12:23:19 CEST 2009


Robert Markula schrieb:
> Hi David,
> 
> Klar, ist auch eine quick&dirty-Lösung. Das Ganze ist in der richtigen
> Implementation auch in ein nettes Script verpackt, dass die ganze harte
> Arbeit abnimmt ;-)
> 
> Grüße,
> Robert

Hier das Script, vielleicht hilfts ja jemandem.

Es werden übrigens zwei Datenbanken gesichert. Die Dateinamen der
Sicherungen lauten bspw. "2009-05-27_typo3.sql.gz" oder
"2009-05-27_phpbb.sql.gz".

Das erste Script backup.sh liegt auf dem Client; das zweite Script
.db.backup.sh auf dem Server.
Das backup.sh verbindet sich per SSH mit dem Server, stößt dort das
.db.backup.sh an und lädt anschließend die gesicherten Datenbanken und
die Dateien eines weiteren Verzeichnisses in ein lokales Verzeichnis auf
den Client herunter.

Erstmal das backup.sh:
<!-- Code begin -->
#!/bin/bash
# Backup the TYPO3 and phpBB databases
# and all user created files
# This file stays on your local client
# backup.sh

# Configuration
USER=myuser
SERVER=0.0.0.0

# SSH into reform-adventisten.net
ssh $USER@$SERVER ./.db_backup.sh

# Backup files from the server
# The directories backup/db and
# typo3 are included.
rsync -av --delete --progress -e ssh $USER@$SERVER:'\
backup/db \
typo3' \
'/home/username/server_backup/'
<!-- Code end -->



und jetzt das .db.backup.sh:
<!-- Code begin -->
#!/bin/bash
# Backup the TYPO3 and phpBB databases
# This file goes to your server
# .db.backup.sh

# Configuration
MYSQLSERVER=127.0.0.1
BACKUPDIR=backup/db
DATE=$(date +%F)
# TYPO3 database
TYPO3USER=user1
TYPO3PASS=123
TYPO3DB=db1
TABLES="cache_hash cache_pages cache_pagesection"
# phpBB database
PHPBBUSER=user2
PHPBBPASS=456
PHPBBDB=db2

# Flush TYPO3 All Caches
for table in $TABLES
do
  mysql -e 'TRUNCATE TABLE '"$table"'' -h $MYSQLSERVER -D $TYPO3DB -u
$TYPO3USER --password=$TYPO3PASS
done

# Backup databases
mysqldump -h $MYSQLSERVER -u $TYPO3USER -p$TYPO3PASS $TYPO3DB | gzip >
$BACKUPDIR/${DATE}_typo3.sql.gz

mysqldump -h $MYSQLSERVER -u $PHPBBUSER -p$PHPBBPASS $PHPBBDB | gzip >
$BACKUPDIR/${DATE}_phpbb.sql.gz

# Deny file access to database backups
chmod 700 -R $BACKUPDIR/
<!-- Code end -->

Grüße,
Robert


More information about the TYPO3-german mailing list