Offenbar kommt es in den besten Familien vor, dass mysql mal nicht wieder hochkommt. Evtl. hätte ich das auch reparieren können, aber ich wollte auch mal ausprobieren, ob mein mysqldump
der wordpress-DB seinen Zweck erfüllt: Es soll im „Katastrophenfall“ zum Restaurieren dienen. Leider war das nicht ganz trivial.
Hier gleich meine Lösung:
rm -rf /opt/dockervolumes/wordpress/var_lib_mysql
docker-compose -f mein-docker-compose.yml up -d mysql
echo "create database wordpress" | docker exec -i wordpress_mysql_1 mysql -u root --password=xxx --default-character-set=utf8
bzip2 -dc mysql-backup/mysqldump_wordpress.sql.bz2 | docker exec -i wordpress_mysql_1 mysql -h localhost -u root --password=xxx wordpress --default-character-set=utf8
docker-compose -f mein-docker-compose.yml up -d
- Das Passwort (‚xxx‘) steht in der
mein-docker-compose.yml
. - Ein ähnlicher Versuch via docker-compose hat immer wieder zu „seltsamen“ Abbrüchen geführt:
bzip2 -dc mysql-backup/mysqldump_wordpress.sql.bz2 | docker-compose -f mein-docker-compose.yml exec mysql mysql -h localhost -u root --password=xxx wordpress --default-character-set=utf8 >mysql-import4.out
Somit hat sich gezeigt, dass mein mysqldump-Backup von wordpress eigentlich sehr einfach wieder einzuspielen ist…
Anhang: mein-docker-compose.yml
Hier mein aktuelles compose-File für wordpress (inkl. Backup der mysql-DB):
mysql:
image: mysql:latest
mem_limit: 300m
environment:
- MYSQL_ROOT_PASSWORD=xxx
restart: always
volumes:
- /opt/dockervolumes/wordpress/var_lib_mysql:/var/lib/mysql
- /etc/localtime:/etc/localtime
- /etc/timezone:/etc/timezone
mysql-backup:
image: 'dsteinkopf/backup-all-mysql:latest'
environment:
- BACKUP_INTERVAL=86400
links:
- mysql
restart: always
volumes:
- '/opt/dockervolumes/wordpress/mysql-backup:/var/dbdumps'
- '/etc/localtime:/etc/localtime'
- '/etc/timezone:/etc/timezone'
wordpress:
image: 'dsteinkopf/wordpress:latest'
links:
- mysql
ports:
- '8082:80'
restart: always
volumes:
- '/opt/dockervolumes/wordpress/var_www_html:/var/www/html'
- '/etc/localtime:/etc/localtime'
- '/etc/timezone:/etc/timezone'
One thought on “WordPress-Backup aus mysqldump wieder herstellen”