利用crontab系统每天定时备份MySQL数据库

  • 来源: 互联网 作者: rocket   2008-03-18/17:11
  • 利用系统crontab来定时执行备份文件,按日期对备份结果进行保存,达到备份的目的。

     

    1、创建保存备份文件的路径/mysqldata 

    #mkdir /mysqldata 

    2、创建/usr/sbin/bakmysql文件 

    #vi /usr/sbin/bakmysql 

    输入 

    rq=` date +%Y%m%d ` 

    tar zcvf /mysqldata/mysql$rq.tar.gz /var/lib/mysql 

    或者写成 

    rq=` date +%Y%m%d ` 

    mysqldump --all-databases -u root -p980405 > /mysqldata/mysql$rq.tar.gz 

    /var/lib/mysql是你数据库文件的目录,部分用户是/usr/local/mysql/data,每个人可能不同 

    /mysqldata/表示保存备份文件的目录,这个每个人也可以根据自己的要求来做。 

    3、修改文件属性,使其可执行 

    # chmod +x /usr/sbin/bakmysql 

    4、修改/etc/crontab 

    #vi /etc/crontab 

    在下面添加 

    01 3 * * * root /usr/sbin/bakmysql 

    表示每天3点钟执行备份 

    5、重新启动crond 

    # /etc/rc.d/init.d/crond restart 

    完成。 

    这样每天你在/mysqldata可以看到这样的文件 

    mysql20040619.tar.gz 

    你直接下载就可以了。

    在tar命令执行前,停止数据库服务进程或锁定数据库, 

    否则恢复数据时,会出现数据库损坏的情形,运气好时可修复,运气不好时就不可以了。


    评论 {{userinfo.comments}}

    {{money}}

    {{question.question}}

    A {{question.A}}
    B {{question.B}}
    C {{question.C}}
    D {{question.D}}
    提交

    驱动号 更多