咨询热线:4006-75-4006
售前:9:00-23:30 备案:9:00-18:00 技术:7*24h
新建backup.sh文件
#!/bin/bash
databases=(db1 db2 db3) # 要备份的数据库名,多个数据库用空格分开
path=/home/mysqlbakup/ # 备份文件要保存的目录
if [ ! -d "$path" ]; then
mkdir -p "$path"
fi
for db in ${databases[*]} # 循环databases数组
do
# 备份数据库生成SQL文件
/bin/nice -n 19 /usr/bin/mysqldump -uroot -ppassword --database $db > $path$db-$(date +%Y%m%d).sql
# 将生成的SQL文件压缩
/bin/nice -n 19 tar zcvf $path$db-$(date +%Y%m%d).sql.tar.gz $path$db-$(date +%Y%m%d).sql
# 删除7天之前的备份数据
find $path -mtime +7 -name "*.sql.tar.gz" -exec rm -rf {} ;
done
# 删除生成的SQL文件
rm -rf $basepath/*.sql
注:
1./bin/nice -n 19 执行命令的级别
2.需要填写mysql的root密码
3.crontab -e 进行编辑
crontab -l 显示当前crontab中的内容
例如: 每3分钟执行一次