利用Crontab为Linux定时备份Mysql数据库

利用系统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 -p密码 > /mysqldata/mysql$rq.sql

  /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

      # sudo service cron stop

      # sudo service cron start

  完成。

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

  mysql20040619.tar.gz

  你直接下载就可以了。

   

      还原:

      create database huatuo;
      SOURCE /mysqldata/mysql20110819.sql >>aa.txt

 

     默认情况下,Ubuntu Linux不启用Cron Log

      下面的几个步骤启用Cron Log让我们更好的调试Cron:

      编辑 /etc/syslog.conf,并且打开以cron.*开始的那行注释。

     运行 /etc/init.d/sysklogd restart 。

     运行 /etc/init.d/cron restart 。

     即可。

 

rsync

dell:
 /usr/bin/rsync --daemon  --config=/etc/rsyncd/rsyncd.conf

 rm -rf /var/run/rsyncd.pid

 ps ax|grep rsync

 

 

19:
/usr/sbin/rsync/
./rsyncdata.sh 
./rsyncimage.sh

/etc/crontab
*/5 * * * * root /usr/sbin/rsync/rsyncdata.sh
*/12 * * * * root /usr/sbin/rsync/rsyncimage.sh

 

00 7 * * * root /usr/sbin/rsync/apache2.sh
00 12 * * * root /usr/sbin/rsync/apache2.sh
00 23 * * * root /usr/sbin/rsync/apache2.sh

你可能感兴趣的:(数据库)