linux下mysql自动备份数据库与自动删除临时文件

370 查看

一、每日23:00自动删除临时文件

首先查看一下crontab的任务列表:
crontab -l
然后新建:
crontab -e
添加一行:
00 03 * * * rm -rf /www/cmstest/my120/public/scripts/jpgraph/*
保存退出。
重启服务:  /etc/rc.d/init.d/crond restart

二、每日24:00自动备份数据库

利用系统crontab来定时执行备份文件,按日期对备份结果进行保存,达到备份的目的。

1、创建保存备份文件的路径/mysqldata
#mkdir /mysqldata

2、创建/usr/sbin/bakmysql文件
查找数据库库文件的路径:
一般都是:/var/lib/mysql,或者,/usr/local/mysql/var
查找方法:

1、/usr/local/mysql/bin/mysql -u root -p   进入数据库
2、输入:show databases;
3、这是可以查看到所有的数据库,然后
4、find / -name db(你想查找的数据库名)

之后:#vi /usr/sbin/bakmysql
输入

复制代码 代码如下:

rq=` date +%Y%m%d `
tar zcvf /mysqldata/mysql$rq.tar.gz /var/lib/mysql

3、修改文件属性,使其可执行

# chmod +x /usr/sbin/bakmysql
新建任务:
首先查看一下crontab的任务列表:
crontab -l
然后新建:
crontab -e
添加一行
00 04 * * * /usr/sbin/bakmysql
表示每天24点钟执行备份

4、重新启动crond
# /etc/rc.d/init.d/crond restart
此后每天就可以在/mysqldata中看到类似下的文件了:mysql20040619.tar.gz。