linux使用crontab定时备份MYSQL数据库/表
Song •
2535 次浏览 •
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
-
centos/ubuntu/Mac中使用Supervisor监控管理laravel queue队列进程 2018-02-27 -
[ laravel分页 ] laravel5.*带参数分页,自定义分页,获取总数以及列参数用法详解 2018-02-26 -
laravel如何修改默认的加密与解密方式? 2018-02-26 -
laravel 5.*进行支付宝同步/异步通知签名验证问题汇总 2018-02-13 -
[ laravel拓展 ] 使用laravel agent轻松识别客户端信息以及设备信息 2018-02-11

更多相关好文