美文网首页
cron定时备份mysql数据库

cron定时备份mysql数据库

作者: Jackson_Z | 来源:发表于2023-02-22 10:59 被阅读0次

直接上脚本

#!/bin/sh

# /usr/local/bin/mysqldump -hhost -Pport -uuser -p'pwd' db | gzip > /Users/dh/Downloads/qqy_bk/qqy_$(date +%Y%m%d_%H%M%S).sql.gz
# /usr/local/bin/mysqldump -hhost -Pport qqy > /Users/dh/Downloads/qqy_bk/qqy_$(date +%Y%m%d_%H%M%S).sql
/usr/local/bin/mysqldump -hhost -Pport qqy | gzip > /Users/dh/Downloads/qqy_bk/qqy_$(date +%Y%m%d_%H%M).sql.gz
# 删除一天前的文件
find /Users/dh/Downloads/qqy_bk/ -mtime +1 -type f -name "*.gz" -exec rm -rf {} \; 

指定账户密码的话会提示mysqldump: [Warning] Using a password on the command line interface can be insecure.,脚本还是会继续执行,如果不想这个提示的话,可以在mysql配置文件.my.cnf加如下代码

[mysqldump]
user=user
password=pwd

特别说明: 一定要写全路径

添加定时任务

corntab -e
# 每隔30分钟备份一次
*/30 * * * * /Users/dh/Downloads/qqybk.sh

执行日志可在var/log/corn.log查看,没有的话可在var/mail/dh查看待发邮件,里面有执行失败的原因

From dh@dhdeMac-Studio.local  Thu Feb 23 10:23:10 2023
Return-Path: <dh@dhdeMac-Studio.local>
X-Original-To: dh
Delivered-To: dh@dhdeMac-Studio.local
Received: by dhdeMac-Studio.local (Postfix, from userid 501)
    id A63****BF; Thu, 23 Feb 2023 10:23:00 +0800 (CST)
From: dh@dhdeMac-Studio.local (Cron Daemon)
To: dh@dhdeMac-Studio.local
Subject: Cron <dh@dhdeMac-Studio> /Users/dh/Downloads/qqybk.sh
X-Cron-Env: <SHELL=/bin/sh>
X-Cron-Env: <PATH=/usr/bin:/bin>
X-Cron-Env: <LOGNAME=dh>
X-Cron-Env: <USER=dh>
Message-Id: <20230223022300.A63****BF@dhdeMac-Studio.local>
Date: Thu, 23 Feb 2023 10:23:00 +0800 (CST)

/bin/sh: /Users/dh/Downloads/qqybk.sh: Operation not permitted

如果Mac电脑执行报错Operation not permitted,需要为/usr/sbin/cron添加完全磁盘访问权限

有些特殊符号要添加转义,如 * * * * * echo "$(date +\%Y\%m\%d_\%H\%M\%M)" >> /Users/dh/Downloads/date.txt

参考:
https://blog.humh.cn/?p=947
http://events.jianshu.io/p/fa179bfbf8b4
https://blog.csdn.net/weixin_41769796/article/details/119211060

相关文章

网友评论

      本文标题:cron定时备份mysql数据库

      本文链接:https://www.haomeiwen.com/subject/vskakdtx.html