当前位置:Gxlcms > mysql > 轻量级MySQL备份方案:AutoMySQLBackup_MySQL

轻量级MySQL备份方案:AutoMySQLBackup_MySQL

时间:2021-07-01 10:21:17 帮助过:19人阅读

bitsCN.com

  有句话说得好:『选择最好的不一定是最好的选择!』。AutoMySQLBackup算不上出类拔萃,但作为轻量级MySQL备份方案,对一些迷你项目而言,它绝对值得尝试。

  AutoMySQLBackup使用起来简单方便,属于快餐型工具,操作步骤如下:

  下载AutoMySQLBackup,是一个名字类似automysqlbackup.sh的shell脚本。

  创建配置文件,缺省内容就是shell脚本中“START CFG”和“END CFG”之间的部分:

  1. shell> mkdir /etc/automysqlbackup
  2. shell> sed -n '/START CFG/,/END CFG/s/^/s*//p' automysqlbackup.sh /
  3. > /etc/automysqlbackup/automysqlbackup.conf

  包含基本选项和高级选项两部分,主要设置基本选项,如下所示:

  1. # Username to access the MySQL server e.g. dbuser
  2. USERNAME=debian
  3. # Password to access the MySQL server e.g. password
  4. PASSWORD=
  5. # Host name (or IP address) of MySQL server e.g localhost
  6. DBHOST=localhost
  7. # List of DBNAMES for Daily/Weekly Backup e.g. "DB1 DB2 DB3"
  8. DBNAMES="all"
  9. # Backup directory location e.g /backups
  10. BACKUPDIR="/srv/backup/db"
  11. # Mail setup
  12. # What would you like to be mailed to you?
  13. # - log : send only log file
  14. # - files : send log file and sql files as attachments (see docs)
  15. # - stdout : will simply output the log to the screen if run manually.
  16. # - quiet : Only send logs if an error occurs to the MAILADDR.
  17. MAILCONTENT="log"

  按部就班的设置USERNAME,PASSWORD,DBNAMES,BACKUPDIR,由于配置文件包含账号密码等敏感信息,所以可能需要考虑一下权限,另外还有一点需要说明的是邮件相关的设置,作为轻量级MySQL备份方案,此功能显得有点画蛇添足,建议关闭(stdout)。

  万事俱备,只欠东风,接着设置定时任务,比如说设定每天备份:

  1. shell> cp /path/to/automysqlbackup.sh /etc/cron.daily/automysqlbackup
  2. shell> chmod +x /etc/cron.daily/automysqlbackup

  如此一来,就大功告成了,会在你设定的备份目录中按日,周,月来存档。

  提示:每天备份,日积月累可能会占用大量的磁盘空间,为了避免磁盘空间耗尽,定期删除旧的备份文件是必要的,比如删除N天前的备份文件,可以使用类似下面的shell命令:

  1. shell> find /path/to/backup/dir -type f -mtime +N -print0 | xargs -0 rm -f

  另外要注意搭配mtime时,N/-N/+N的含义易混淆,大家可以参考相关文档后再使用。

bitsCN.com

人气教程排行