Ubuntu下Mysql自动备份

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

2、创建/home/gj/mysqlbackup.sh 脚本文件

3、vim mysqlbackup.sh 并 chmod +x mysqlbackup.sh 添加可执行权限

4、把如下代码放在mysqlbackup.sh

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

    mysqldump -uroot -proot --all-databases | gzip > /home/gj/ratwechat$rq.gz


    解释:all-databases 备份所有数据库 

         第一个root为数据库用户名

         第二个root为数据库密码


5、添加定时任务 crontab -e


6、在最后一行添加如下代码:

    

    09 12 * * 4 /home/gj/mysqlbackup.sh

    解释:每周的 12:09 备份一次


      基本格式 : 
        *  *  *  *  *  command 
        分 时 日 月 周 命令 
        第1列表示分钟1~59 每分钟用*或者 */1表示 
        第2列表示小时1~23(0表示0点) 
        第3列表示日期1~31 
        第4列表示月份1~12 
        第5列标识号星期0~6(0表示星期天) 
        第6列要运行的命令

        crontab文件的一些例子: 
        30 21 * * * /usr/local/etc/rc.d/lighttpd restart 
        上面的例子表示每晚的21:30重启apache。 
        45 4 1,10,22 * * /usr/local/etc/rc.d/lighttpd restart 
        上面的例子表示每月1、10、22日的4 : 45重启apache。 
        10 1 * * 6,0 /usr/local/etc/rc.d/lighttpd restart 
        上面的例子表示每周六、周日的1 : 10重启apache。 
        0,30 18-23 * * * /usr/local/etc/rc.d/lighttpd restart 
        上面的例子表示在每天18 : 00至23 : 00之间每隔30分钟重启apache。 
        0 23 * * 6 /usr/local/etc/rc.d/lighttpd restart 
        上面的例子表示每星期六的11 : 00 pm重启apache。 
        * */1 * * * /usr/local/etc/rc.d/lighttpd restart 
        每一小时重启apache 
        * 23-7/1 * * * /usr/local/etc/rc.d/lighttpd restart 
        晚上11点到早上7点之间,每隔一小时重启apache 
        0 11 4 * mon-wed /usr/local/etc/rc.d/lighttpd restart 
        每月的4号与每周一到周三的11点重启apache 
        0 4 1 jan * /usr/local/etc/rc.d/lighttpd restart 
        一月一号的4点重启apache

7、sudo /etc/init.d/cron restart 重启定时任务

   注意点:

           1、CentOS 服务是 /sbin/service crond restart

           2、sudo cat /var/log/cron 可以查看是否有执行自定义脚本          



你可能感兴趣的:(Ubuntu下Mysql自动备份)