搜索
Hi~登录注册
查看: 2233|回复: 0

最简单的每日自动备份网站及数据库到FTP脚本(完善版本)

[复制链接]

1892

主题

1899

帖子

6406

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
6406
发表于 2016-5-15 20:03:49 | 显示全部楼层 |阅读模式
  1. #!/bin/sh
  2. cd /root
  3. #导出数据库
  4. /usr/local/bin/mysqldump --opt --user=AAAAAA --password=****** --host=localhost AAAAAA > AAAAAA.sql
  5. /usr/local/bin/mysqldump --opt --user=BBBBBB --password=****** --host=localhost BBBBBB > BBBBBB.sql
  6. #打包文件
  7. tar -zcvf AAAAAA.sql_$(date +%Y%m%d).tar.gz AAAAAA.sql
  8. tar -zcvf AAAAAA_$(date +%Y%m%d).tar.gz /usr/local/www/nginx-dist/AAAAAA
  9. tar -zcvf BBBBBB.sql_$(date +%Y%m%d).tar.gz BBBBBB.sql
  10. tar -zcvf BBBBBB_$(date +%Y%m%d).tar.gz /usr/local/www/nginx-dist/BBBBBB
  11. #删除FTP空间5天前备份&上传当前备份到FTP空间
  12. ftp -v -n dedibackup-dc3.online.net << EOF
  13. user sd-XXXXXX ******
  14. type binary
  15. delete AAAAAA.sql_$(date -v -5d +%Y%m%d).tar.gz
  16. delete AAAAAA_$(date -v -5d +%Y%m%d).tar.gz
  17. delete BBBBBB.sql_$(date -v -5d +%Y%m%d).tar.gz
  18. delete BBBBBB_$(date -v -5d +%Y%m%d).tar.gz
  19. put AAAAAA.sql_$(date +%Y%m%d).tar.gz
  20. put AAAAAA_$(date +%Y%m%d).tar.gz
  21. put BBBBBB.sql_$(date +%Y%m%d).tar.gz
  22. put BBBBBB_$(date +%Y%m%d).tar.gz
  23. bye
  24. EOF
  25. #删除本地文件
  26. rm -rf *.tar.gz
  27. rm -rf *.sql
复制代码
将以上脚本按照您的VPS信息设定后,存为backup.sh,然后上传至VPS的root目录下。

注意:这段代码适用于FreeBSD,
Linux系统请将$(date -v -5d +%Y%m%d)替换为$(date -d "5 day ago" +%Y%m%d)


给脚本赋予执行权限

chmod +x /root/backup.sh

用cron实现每日定时自动运行这个脚本

添加定时任务

crontab –e

添加以下任务

00 05 * * * /root/backup.sh
公众微信:idc5ahl
公众QQ:吾爱互联
关注公众微信,公众QQ每天领现金卡密
卡密介绍(http://www.5ahl.com/thread-2182-1-1.html
回复

使用道具 举报

游客
回复
您需要登录后才可以回帖 登录 | 点我注册

快速回复 返回顶部 返回列表