linux 下备份mysql数据库

今天老板让备份数据库没办法自己折腾吧,下面把折腾的结果总结总结。

数据库备份思路:

  1.编写脚本

  2.执行脚本  哈哈,是不是很简单,打开冰箱,放入大象,关上。下面我是具体操作。

一、编写脚本

  1.设置备份的目录

       mkdir /usr/local/mysqlbackup
    cd /usr/local/mysqlbackup

  2.编写备份脚本代码:

vi dbbackup.sh 

 备份用的是mysqldump备份,好处解压之后就是sql脚本可以直接导入。

复制下面的代码将用户和密码 数据库 改成自己的  

#!/bin/sh
mysqldump -uroot -p123456 dbname  | gzip > /var/lib/mysqlbackup/dbname`date +%Y-%m-%d_%H%M%S`.sql.gz
cd  /usr/local/mysqlbackup
rm -rf `find . -name '*.sql.gz' -mtime 10`  #删除10天前的备份文件

  3.更改备份脚本权限 

chmod +x dbbackup.sh 

 二、用crontab定时执行备份脚本代码: 

crontab -e 

  若每天晚上1点00备份,添加如下代码, 一般把备份时间和其他执行的业务分开,以免mysql崩溃。

00 1 * * * /usr/local/mysqlbackup/dbbackup.sh

  

   crontab 命令
* * * * *     /usr/local/mysqlbackup/dbbackup.sh  	每分钟执行一次
3,15 * * * * /usr/local/mysqlbackup/dbbackup.sh 	每天的3点和15点执行一次
3,15 * * * * /usr/local/mysqlbackup/dbbackup.sh 	每天的3点和15点执行一次
3,15 8-11 * * * /usr/local/mysqlbackup/dbbackup.sh  在上午8点到11点的第3和第15分钟执行
* */1 * * *     /usr/local/mysqlbackup/dbbackup.sh  每一小时重启smb
0 23 * * 6      /usr/local/mysqlbackup/dbbackup.sh 每星期六的晚上23 : 00 
* 23-7/1 * * * /usr/local/mysqlbackup/dbbackup.sh  晚上11点到早上7点之间,每隔一小时重启smb 
0 4 1 jan *    /usr/local/mysqlbackup/dbbackup.sh  一月一号的4点重启smb

  


  重启service crond restart
  可以通过命令crontab -l 查看crontab的配置情况。
  crontab -r 删除当前用户定时任务

 

posted @ 2017-11-28 21:00  考虑突破  阅读(1439)  评论(0编辑  收藏  举报