服务器上的mysql数据库,需要自动进行备份,防止各种被搞,具体脚本如下:
#!/bin/bash
# 数据库备份脚本
# 使用方法:
# 修改脚本执行权限 命令:chmod 755 bak.sh
# 添加至定时任务 命令:crontab -e 编辑内容如下
# 每日凌晨3点触发
# 0 3 * * * /usr/local/dbbak/bak.sh
date=$(date +%Y%m%d)
# 替换成你的数据库名称
db=test
# 替换成你的数据库登录用户名
user=root
# 替换成你的数据库登录密码
pass=123456
filename=$db'_'$date'.sql'
bakpath=/home/db_bake/$db
# 保存历史备份天数
keepdays=30
echo "mysqldump start... "
if [ -e $bakpath ]
then
echo $bakpath is exists
else
mkdir -p $bakpath
echo dir $bakpath created
fi
if [ -d $bakpath ]
then
mysqldump -u$user -p$pass $db &> $bakpath/$filename
find $bakpath -mtime +$keepdays -name '*.sql' -exec rm -rf {} \;
echo "mysqldump done."
fi根据脚本的说明,设置系统定时任务
这样数据库可以每天给你定时备份,并且还可以定时清理历史备份







发布评论