document MySQL Backup
This commit is contained in:
parent
9267524312
commit
29d65832ec
32
README.md
32
README.md
|
|
@ -92,6 +92,38 @@ Check, wer gebanned ist:
|
||||||
## Backup Server
|
## Backup Server
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
|
Backup MySQL-DBs:
|
||||||
|
|
||||||
|
/usr/local/bin/backup-mysql-dbs.sh (sinngemaess, eine Zeile pro Container):
|
||||||
|
root@moby:/usr/local/bin# more backup-mysql-dbs.sh
|
||||||
|
#!/bin/bash
|
||||||
|
# Backup der MySQL DBs (Docker)
|
||||||
|
#
|
||||||
|
for container_name in $(docker ps --format "{{.Image}} {{.Names}}" |grep mysql |awk '{print $2}'); do
|
||||||
|
if [ -f /usr/local/bin/${container_name}.pwd ]; then
|
||||||
|
# im pwd-File muss "PWD=XXXX" (root) gesetzt werden
|
||||||
|
. /usr/local/bin/${container_name}.pwd
|
||||||
|
docker exec ${container_name} /usr/bin/mysqldump -u root --password=${PWD} --all-databases > /backup/mysql-databases-${container_name}-$(date +%Y%m%W).sql 2>/dev/null
|
||||||
|
else
|
||||||
|
>&2 echo "Password must be set as PWD=XXXX in /usr/local/bin/${container_name}.pwd"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
# Cleanup Old Backups
|
||||||
|
find /backup -type f -mtime +30 -exec rm {} \;
|
||||||
|
|
||||||
|
/etc/cron.d/backup-mysql-dbs:
|
||||||
|
# Backup MySQL DBs
|
||||||
|
#
|
||||||
|
45 5 * * * root /usr/local/bin/backup-mysql-dbs.sh >/dev/null
|
||||||
|
|
||||||
|
|
||||||
|
Restore: just in case:
|
||||||
|
cat backup.sql | docker exec -i CONTAINER /usr/bin/mysql -u root --password=root DATABASE
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# apt install restic
|
# apt install restic
|
||||||
# mkdir /backup
|
# mkdir /backup
|
||||||
# mkdir /backup-restic
|
# mkdir /backup-restic
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue