linux使用crontab定时备份MYSQL数据库/表

Song2010 次浏览0个评论2018年03月08日

一、创建备份存储文件:

mkdir /var/mysqlbackup 
cd /var/mysqlbackup

二、编写数据库备份shell代码dbbackup.sh并且压缩数据库

粘帖以下代码到dbbackup.sh,务必更改其中的username,password,dbname,tablename;如果要备份整个数据库,删除tablename即可,如果要备份多张表,多写几个tablename即可。

#!/bin/sh
# 这里会使用zip压缩备份的数据库文件
mysqldump -uusername -ppassword dbname | gzip > /var/mysqlbackup/dbname`date +%Y-%m-%d_%H%M%S`.sql.gz
# 备份表以及多张表
# mysqldump -uusername -ppassword dbname tablename1 tablename2 tablename3 | gzip > /var/mysqlbackup/dbname`date +%Y-%m-%d_%H%M%S`.sql.gz
cd  /var/lib/mysqlbackup
# 删除10天前的备份文件,可自定义时间
rm -rf `find . -name '*.sql.gz' -mtime 10`

三、更改备份脚本权限,允许程序执行

chmod +x dbbackup.sh

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

crontab -e

比如我们每天晚上21点00备份数据库,可以使用添加如下代码:

00 21 * * * /var/mysqlbackup/dbbackup.sh

然后重启一下我们的cron,具体参考自己的服务器,ubuntu重启如下:

sudo service cron restart

提交评论

请登录后评论

用户评论

    当前暂无评价,快来发表您的观点吧...

更多相关好文

    当前暂无更多相关好文推荐...