欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

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

程序员文章站 2024-02-02 18:31:10
...

利用系统crontab来定时执行备份文件,按日期对备份结果进行保存,达到备份的目的。 1、创建保存备份文件的路径/mysqldata #mkdir /mysqldata 2、创建/usr/sbin/bakmysql文件 #vi /usr/sbin/bakmysql 输入 rq=` date +%Y%m%d ` tar zcvf /mysqldata/mysql$rq.

利用系统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命令执行前,停止数据库服务进程或锁定数据库,

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