Restic:直接备份 MariaDB/MySQL 无需中间文件

此脚本假设 .env 包含 MARIADB_ROOT_PASSWORD 变量以访问 MariaDB。

你需要适当设置 RESTIC 环境变量,以便 Restic 知道备份到哪里。

backup_stdin.sh
export RESTIC_REPOSITORY=rest:http://restic:abc123@10.2.3.4:16383/myservice
export RESTIC_PASSWORD_FILE=.restic_password

其中 .restic_password 仅包含此特定共享的加密密码。

直接将本地 MariaDB/MySQL 数据库备份到 Restic

backup_local_mariadb.sh
source .env # for MARIADB_ROOT_PASSWORD
mysqldump -uroot -p${MARIADB_ROOT_PASSWORD} --all-databases | restic --verbose backup --stdin --stdin-filename="mariadb.sql"

直接将 docker 化的 MariaDB/MySQL 数据库备份到 Restic

backup_docker_mariadb.sh
source .env # for MARIADB_ROOT_PASSWORD
docker-compose exec -T mariadb mariadb-dump -uroot -p${MARIADB_ROOT_PASSWORD} --all-databases | restic --verbose backup --stdin --stdin-filename="mariadb.sql"

Check out similar posts by category: Databases, Restic, Backup