Mysql远程定时备份数据
前提条件:
首先在备份机上安装mysql的客户端,或者直接安装mysql也可以。
开始备份
1、 创建备份路径
mkdir /data/backup/test/
2、创建备份脚本
vim backup.sh
写入shell:
mysqldump -h 需要备份数据库所在机器ip -u用户名 -p密码 备份的数据库名 --opt -Q -R --skip-lock-tables > 备份文件所在路径
实例:
mysqldump -h 192.168.0.11 -uroot -p123456 test --opt -Q -R --skip-lock-tables > /data/backup/test/test_$(date +%Y%m%d_%H%M%S).sql
在创建成功之后可以先运行测试一下看看,相应的路径下面是否有备份的sql文件生成。
3、创建定时任务
3.1安装 crontab
#查看crontab是否安装
crontab -l
#no crontab for root 未安装
#安装crontab
yum -y install vixie-cron # crontabs的核心依赖
yum install crontabs
#服务状态控制
/sbin/service crond start //启动服务
/sbin/service crond stop //关闭服务
/sbin/service crond restart //重启服务
/sbin/service crond reload //重新载入配置
/sbin/service crond status //查看状态
#或者使用
service crond start
service crond stop
service crond restart
service crond reload
service crond status
#开机启动
vim /etc/rc.d/rc.local
/sbin/service crond start
3.2加入计划任务
crontab -e
0 1 * * * sh /data/backup.sh
查看计划任务是否执行:
命令类似tomcat的日志查看
tail -f /var/log/cron
注:在backup.sh中加入下面语句:
rm -rf $(find /data/backup/ -mtime +30 -name "*.sql")
1
这样就能只备份最近一个月的文件了。