Linux自动备份MySQL数据库

时间:2022-05-02 10:26:21

  MySQL定期备份是一项重要的工作,但人工操作太繁琐,也难避免有所疏漏,使用下面的方法即可让系统定期备份数据。

1、创建备份文件夹

    #cd /www

    #makedir backup

    2、编写运行脚本

    #vi autobackup

    写入以下内容:

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

    mysql_bin_dir/mysqldump –opt dataname -u user -ppassword | gzip >     /www/mysqlbackup/name$filename.gz

    保存退出

    说明:

    (1)mysql_bin_dir:mysql的bin路径;

    (2)dataname:数据库名;

    (3)user:数据库用户名;

    (4)password:用户密码;

    (5)name:自定义备份文件前缀标识。

    如上例,将自动备份mysql数据库,并以gzip压缩方式存储,文件名为name20080101.gz的形式。

    3、为脚本添加执行权限

    #chmod +x autobackup

    4、让crontab来完成定期执行的任务

    这一步中,Redhat的方法会不一样,后面专门给出。

    编辑crontab:

    #vi /etc/crontab

    在最后一行中加入:

    01 5 * * * root /www/autobackup

    每天5点运行脚本,也可以修改5为其他指定时间。

    Redhat方法:

    Redhat的crontab采用按时间调用4个目录(/etc/cron.hourly:每小时;/etc/cron.daily:每天;/etc/cron.weekly:每周;/etc/cron.monthly:每月)中脚本出来运行的方式。


    Redhat中只需要将刚才编辑的脚本复制到相应的目录即可。

    5、重启crontab

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

    完成。