liunx下sheel脚本自动凌晨备份mysql数据库

作者:Liaodeity - 2020年05月27日

1、cd到/server/autobackup的目录,如不存在请新建,将脚本内容新增到文件backsql.sh

cd /server/autobackup
vim backsql.sh

2、脚本内容,使用mysqldump导出备份。web改成mysql用户,123456改成mysql密码,web_db需要备份的数据库名称

#! /bin/bash
#如信息已修改,需改的user和密码以及数据库名
#添加定时crontab每天0点执行备份 00 00 * * * /server/autobackup/backsql.sh
cd /server/autobackup
SqlBakName=bak_mysql_$(date +%Y%m%d).tar.gz
mysqldump --user=web --password="123456" --lock-all-tables web_db > _backup.sql
tar zcvf $SqlBakName _backup.sql
#自动删除30天前的备份记录,释放空间
rm -f bak_mysql_$(date +%Y%m%d --date='30 days ago').tar.gz

3、授权backsql.sh执行权限

chmod +x backsql.sh

4、执行一次看是否正常,能否顺利生成数据库备份压缩文件,如有备份请下载解压一次是否正常

./backsql.sh

5、添加crontab自动凌晨执行备份数据库

crontab -e
#添加定时执行,凌晨执行脚本
00 00 * * * /server/autobackup/backsql.sh

5、第二天看看是否正常

本文作者: Liaodeity

本文链接: https://www.jianbaizhan.com/article/650

版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 3.0 许可协议。转载请注明出处!


 请勿发布不友善或者负能量的内容。审查将对发布广告等违规信息进行处罚!