mysql的备份策略之mysqldump
在我们日常维护过程中数据库的备份是必须要有的。这里跟大家分享一下自己写的mysqldump的备份脚本。实现我们的自动化备份。
#!/bin/bash
# mysql 全量备份
dbUser='root' #备份数据库时mysqldump命令使用的账号
dbPass='xxxx' #备份数据库时mysqldump命令使用的密码
dbAddress='127.0.0.1'
socket='/data/mysql/mysql-8.0.20/mysql.sock'
bkDir='/data/backup/mysql_selfservice' #备份文件的存放目录
now_Time=`date +"%F_%H-%M-%S"` #备份文件的后缀
port='3360'
bak_KeepTime=15
/home/mysql/mysql-8.0.20/bin/mysqldump -S ${socket} -u${dbUser} -p${dbPass} -P ${port} --set-gtid-purged=OFF --single-transaction --databases hades --ignore-table=hades.ddos_mail_record --ignore-table=hades.ddos_notice_record --ignore-table=hades.ddos_notice_receive | gzip > ${bkDir}/mysql_all.sql_${now_Time}.gz
#清理过期的备份文件
function purge_backup() {
for i in $(find ${bkDir} -mtime ${bak_KeepTime} |grep mysql_all ); do
rm -f $i
done
}
[[ `date +%H` -eq 12 ]] && purge_backup

浙公网安备 33010602011771号