正文

利用crontab定时备份数据库


[前言]


利用crontabmysqldump定时打包备份数据库,并且实现某个特定时间循环,定时删除旧的备份文件

[环境]


centos all

[版本]


系统自带

[功能]


1、编辑mysql配置文件,设置mysqldump用户名和密码,可能需要重启mysql服务

vim /etc/my.cnf

2、编辑备份shell命令,实现定时备份某个数据库,并且删除过期的备份数据库

#新建备份shell文件
sudo vim xx.sh

#赋予可执行权限,最好是全放开
chmod 777 xx.sh

#/bin/bash

# 备份-数据库
DATE=`date  %Y%m%d_%H`                #every minute
DATABASE=database_name              #database name
DB_USERNAME=user_name                       #database username
DB_PASSWORD="password"                    #database password
BACKUP_PATH=/www/backup/sql          #backup pathhome/backup
mysqldump blog  > /www/backup/sql/${DATABASE}_${DATE}.sql

# 删除sql前三天备份
find /www/backup/sql -mtime  2 -name "*.sql" -exec rm -rf {} \;

3、命令行输入crontab -e,编辑定时任务文件,在编辑界面输入i,编辑定时任务代码,编辑完成,输入:wq ,保存并退出

4、命令行输入sh xx.sh,去备份目录查看是否备份成功

5、关于crontab各项参数说明,编辑定时任务文件,在编辑界面输入i,编辑定时任务代码,编辑完成,输入:wq ,保存并退出

* * * * *
- - - - -
| | | | |
| | | |  ---- 星期中日期值(0-7,星期日可以是0或7)
| | |  ------ 月份(1-12)
| |  -------- 一个月中的日期(1-31)
|  ---------- 小时(0-23)
 ------------ 分钟(0-59)

[其他]


参考链接

本站不直接提供下载,所有下载链接均为第三方

crontab教程

评论
还没有评论
留言