VPS/云主机等
优惠信息分享

Linux云服务器自动每天备份数据库到FTP空间的方法

对于我们的服务器中的业务来说,数据的安全是最为重要的。我们可以采用的备份方式有很多种,比如云端自动快照备份,或者是手动备份。实际上变化较多的还是数据库,我们只要设置数据库的备份就可以。在这里,老蒋整理到一个通过自动每天备份数据库到FTP空间的方法。

yum install sendmail
yum install mailx

安装邮件发送依赖。

#!/bin/bash
# 进入到备份文件夹
cd /home/back
#压缩网站数据
tar zcvf web_$(date +"%Y%m%d").tar.gz 网站目录
# 导出数据库到备份文件夹内
mysqldump -uroot -p数据库密码 数据库名称 > web_data_$(date +"%Y%m%d").sql
# 以附件形式发送数据库到指定邮箱
echo "Blog date"|mail -s "Backup$(date +%Y-%m-%d)" -a web_data_$(date +"%Y%m%d").sql 收件人邮箱
# 删除本地3天前的数据
rm -rf web_$(date -d -3day +"%Y%m%d").tar.gz web_data_$(date -d -3day +"%Y%m%d").sql
# 登录FTP
lftp ftp地址 -u ftp用户名,ftp密码 << EOF
# 进入FTP根目录
cd ftp根目录文件夹
# 删除3天前备份文件
mrm web_$(date -d -3day +"%Y%m%d").tar.gz
mrm web_data_$(date -d -3day +"%Y%m%d").sql
# 上传当天备份文件
mput web_$(date +"%Y%m%d").tar.gz
mput web_data_$(date -d -3day +"%Y%m%d").sql
bye
EOF

创建一个backup.sh文件。

sh /root/backup.sh

当然我们需要对文件设置参数后执行看看。然后我们设置自动备份。

1、赋予文件执行权限(755)

chmod +x /root/backup.sh

2、设定自动任务

crontab -e

SSH执行以上命令。

3、添加任务

00 00 * * * /root/backup.sh

按键盘字符:“i”,回车另起一行,添加以上代码,路径和时间请根据实际情况修改。

其中00 00为时间分/小时,可自行修改,例如:30 00 *,就是每天凌晨0:30运行这个脚本。

赞(0)
未经允许不得转载:遗弃你|YIQINI.COM » Linux云服务器自动每天备份数据库到FTP空间的方法

评论 抢沙发

评论前必须登录!

 

登录

找回密码

注册