mysql数据库,自动备份,省时省力
来源:广州中睿信息技术有限公司官网
发布时间:2012/10/21 23:25:16 编辑:itlead 阅读 1568
为了减轻DBA的工作,数据库自动备份当然少不了,今天我和大家一起来学习通过crontab实现mysql数据的自动备份我们在/etc/cron.daily/目录下创建文件backup内容如下#!/bi

 

  为了减轻DBA的工作,数据库自动备份当然少不了,今天我和大家一起来学习通过crontab实现mysql数据的自动备份

  我们在/etc/cron.daily/目录下创建文件backup内容如下

  #!/bin/bash

  #定义变量name的值,/bin/date日期格式为Y年-m月-d日

  name=`/bin/date "+%Y-%m-%d"`

  #/usr/bin/mysqldump 备份数据库的命令路径

  #-u root 数据库的用户名

  #-p password 数据库的密码把password替换成你自己的密码

  #--opt database 你要备份的数据库 如果要备份所有的库你可以把--opt database替换成--all-databases前面那个database是你数据库的名字,后面的databases是mysqldump的参数别搞混了

  #/home/backup/database$name.sql这个是数据库备份的路径,$符号后面的name就是最前面定义的那个日期,备份的文件将会以你自己定义的文件名加当时的日期来命名

  /usr/bin/mysqldump -u root -ppassword --opt test > /home/backup/test$name.sql

  #这个就是备份所有数据库的命令,和前面的有点小差别

  /usr/bin/mysqldump -u root -ppassword --all-databases | gzip --fast > /home/backup/full$name.gz

  不一样的地方就是把--opt改成了--all-databases,再就是后面的压缩参数gzip,这个参数也可以使用到前面的那个单个数据库的备份命令中

  保存退出

  #修改文件backup为可执行文件

  chmod +x /etc/cron.daily/backup

  进入crontab的配置文件

  # cat /etc/crontab

  #每小时执行一次/etc/cron.hourly/目录下的文件

  01 * * * * root run-parts /etc/cron.hourly

  #每天执行一次/etc/cron.hourly/目录下的文件,执行时间是04点

  00 04 * * * root run-parts /etc/cron.daily

  #每周执行一次/etc/cron.hourly/目录下的文件,每周的第一天04点22分

  22 4 * * 0 root run-parts /etc/cron.weekly

  每月执行一次/etc/cron.hourly/目录下的文件,每月的第一天04点42分

  42 4 1 * * root run-parts /etc/cron.monthly

  刚才我们已经把backup脚本创建到了/etc/cron.daily这个目录下,也就是每天04点都会自动执行脚本做数据库的备份了

  #重启crond服务

  service crond restart

  

 

本站技术原创栏目文章均为中睿原创或编译,转载请注明:文章来自中睿,本站保留追究责任的权利。

 

联系我们CONTACT 扫一扫
愿景:成为最专业的软件研发服务领航者
中睿信息技术有限公司 广州•深圳 Tel:020-38931912 务实 Pragmatic
广州:广州市天河区翰景路1号金星大厦18层中睿信息 Fax:020-38931912 专业 Professional
深圳:深圳市福田区车公庙有色金属大厦509~510 Tel:0755-25855012 诚信 Integrity
所有权声明:PMI, PMP, Project Management Professional, PMI-ACP, PMI-PBA和PMBOK是项目管理协会(Project Management Institute, Inc.)的注册标志。
版权所有:广州中睿信息技术有限公司 粤ICP备13082838号-2