Linux下自动备份七天MySQL数据库并通过FTP上传脚本代码
2020-03-19 09:28:56
李中华


1.首先编写一个sheel服本并命名为autobak.sh,存放于/etc/rc.d。假定备份服务器IP为172.24.0.6,ftp用户为:username,密码为:pwd,MySQL数据库文件位于:/usr/local/mysql/data。

文件内容如下:

#-----------------------------------------

#!/bin/sh

file=mydb.tar

cd /tmp

rm -Rf *.tar

tar cvf $file /usr/local/mysql/data

ftp -i -n <

open 172.24.0.6

user username pwd

prompt off

binary

mdelete mydb7.tar

sleep 10s

rename mydb6.tar mydb7.tar

rename mydb5.tar mydb6.tar

rename mydb4.tar mydb5.tar

rename mydb3.tar mydb4.tar

rename mydb2.tar mydb3.tar

rename mydb.tar mydb2.tar

put $file

close

bye

!

#-----------------------------------------

2.加入定时

输入crontab -e

输入下面的字符:

30 03 * * * /etc/rc.d/autobak.sh

00 06 * * * ntpdate 172.24.0.6

说明:第一行指定每天凌晨3:30自动执行备份,第二行是进行数据库时钟校准。假定备份服务器已开通时钟服务。

前提条件是crond服务必须运行才可能自动执行。

发布:lzh