CentOS Linux中MySQL自动备份及FTP远程备份

前端之家收集整理的这篇文章主要介绍了CentOS Linux中MySQL自动备份及FTP远程备份前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

安装环境:CentOS 6,MysqL5.5

一、背景

近期,公司为加强数据库的数据安全,对数据库进行自动备份,本篇将在Linux下使用crontab自动备份并FTP上传数据库

二、实施脚本

创建脚本dbbackup.sh

  1. #!/bin/bash
  2. DATE=`date+%Y%m%d%H%M`
  3. DATABASE=****#备份数据库
  4. DB_USER=****#备份用户名
  5. DB_PASS="*******"#备份用户名的密码
  6. BACKUP=********#备份路径
  7. /usr/local/MysqL/bin/MysqLdump-u$DB_USER-p$DB_PASS-h127.0.0.1-R--opt$DATABASE|gzip>${BACKUP}\/${DATABASE}_${DATE}.sql.gz#备份及压缩
  8. sleep3
  9.  
  10. find$BACKUP-mtime+7|xargsrm-rf#删除7天以上的备份文件
  11. sleep3
  12.  
  13. ftp-vn<<EOF
  14. open*.*.*.2621#打开ftp服务器,21为ftp服务器端口
  15. userusernamepassword#ftp用户名及密码
  16. binary#二进制上传
  17. cdbackup#切换ftp目录
  18. lcd$BACKUP#切换本地目录
  19. prompt#控制是否使用交互模式,使用关闭功能
  20. mput${DATABASE}_${DATE}.sql.gz#上传备份文件
  21. close
  22. bye
  23. EOF

增加可执行权限

  1. chmod+xdbbackup.sh

加入crontab计划任务,每天凌晨3点自动执行。

  1. crontab-e
  2. 03***/root/dbbackup.sh>/dev/null2>&1

不足:因ftp上传中加入删除7天以上备份测试失败,所以未加入脚本中。且脚本中部分设置未使用变量,没实现邮件通知备份成功与否,后续将陆续改进。下篇将介绍sql Server备份并FTP上传小软件。

猜你在找的CentOS相关文章