lftp自动备份文件和数据库上传FTP服务器的shell脚本

发布时间:2019-08-09编辑:脚本学堂
本文介绍下,在linux下,用lftp命令实现自动备分文件与数据库,并上传到ftp服务器上的一个shell脚本。有需要的朋友,参考下吧。

代码如下:
 

复制代码 代码示例:
#!/bin/bash
#定义数据库的名字和旧数据库的名字
DataBakName=Data_$(date +"%Y%m%d").tar.gz
WebBakName=Web_$(date +%Y%m%d).tar.gz
#删除本地3天前的数据
rm -rf /home/backup/Data_$(date -d -3day +"%Y%m%d").tar.gz /home/backup/Web_$(date -d -3day +"%Y%m%d").tar.gz
#导出mysql/ target=_blank class=infotextkey>mysql数据库
/usr/local/mysql/bin/mysqldump -uroot -ppassword --databases db1 > /home/backup/databackup.sql
#压缩数据库
tar zcf /home/backup/$DataBakName /home/backup/databackup.sql
rm -rf /home/backup/databackup.sql
#压缩网站数据
tar zcvf /home/backup/$WebBakName /home/wwwroot
#使用lftp同步备份目录
lftp -u user,password -e "mirror -R --only-newer /home/backup /backup" ftp.yoursite.cn
exit
END
# edit by www.jb200.com

添加执行权限:
 

复制代码 代码示例:
chmod +x /root/AutoBackupToFtp.sh

crontab实现每天自动运行:
crontab -e
输入内容:
00 00 * * * /root/AutoBackupToFtp.sh
说明:
00 00为时间分/小时,可自行修改,例如:30 12 ***,则每天12.30运行此脚本

说明:
以上代码,用到了lftp命令,及crontab自动化任务。

有关lftp命令的用法,请参考:
lftp自动备份文件和数据库上传FTP服务器的shell脚本
linux下lftp命令使用小结
lftp命令增量备份网站的方法分享
linux下lftp命令行上传或下载整个文件夹的方法
linux下lftp命令中mirror的用法详解
linux下lftp连接ftp服务器进行上传与下载的方法详解

有关crontab的用法,请参考:
linux中crontab定时执行任务命令的详解
linux中crontab定时自动执行计划任务的方法
crontab学习笔记
学习linux设置定时任务的crontab命令
crontab 命令格式与例子
linux定时任务设置crontab学习
不错的crontab教程