Files
Linux/File/Shell/mysql-backup.sh
offends cee91802b3
Some checks failed
continuous-integration/drone Build is failing
synchronization
2025-08-25 15:57:40 +08:00

27 lines
883 B
Bash

#!/bin/bash
#############################################################################################
# 用途: Mysql 数据库备份脚本
# 作者: 丁辉
# 更新时间: 2024-05-20
#############################################################################################
# crontab -e
# 0 2 * * * bash /opt/mysql/backup/mysql-backup.sh
MYSQL_HOST=<MYSQL_HOST>
MYSQL_USER=root
MYSQL_PASS=root
BACKDIRPATH=/opt/mysql/backup
DATE=`date +%F%H%M`
# 填写需要备份的数据库
databases=(
database
)
for DATABASE in ${databases[@]};do
docker run --rm mysql:8.0 mysqldump -h${MYSQL_HOST} -u${MYSQL_USER} -p${MYSQL_PASS} ${DATABASE} > ${BACKDIRPATH}/${DATABASE}-${DATE}.sql
tar zcf ${BACKDIRPATH}/${DATABASE}-${DATE}.tar ${BACKDIRPATH}/${DATABASE}-${DATE}.sql
done
find ${BACKUP_DIR} -name "rainbond-*.sql.gz" -type f -mtime +30 -exec rm {} \; > /dev/null 2>&1