设计一个shell脚本来备份数据库,首先在本地服务器上保存一份数据,然后再远程拷贝一份,本地保存一周的数据,远程保存一个月。
假定,我们知道MySQL root帐号的密码,要备份的库为duscuz,本地备份目录为/bak/mysql,远程服务器IP为192.168.123.30,远程提供一个rsync服务,备份的地址为192.168.123.30::backup,写完脚本后,需要加入到cron中,每天凌晨3点执行。
思路:
数据库备份可以使用mysqldump -u -p > 指定文件
远程拷贝使用rsync -av
内容:
1 |
|
解析:
d1
表示当日的周 范围是0-6 一轮后后面的会覆盖之前存在的当日的周d2
表示当日的日 范围是1-31 一轮后后面的日期会覆盖之前存在的当日的日exec 1>/var/log/mysqlbak.log 2>/var/log/mysqlbak.log
定义了接下来的命令涉及到的所有正确输出和错误输出都会写到日志里面