centos7定时执行脚本编写某时间自动备份mysql数据库到指定文件夹
管理员 发布于 4年前   676
用到的工具:crontab+mysqldump+shell
查看crontab
[root@iz8vbcrus31oj2axurgpjyz ~]# service crond status
Redirecting to /bin/systemctl status crond.service
● crond.service - Command Scheduler
Loaded: loaded (/usr/lib/systemd/system/crond.service; enabled; vendor preset: enabled)
Active: active (running) since Wed 2020-05-06 17:20:39 CST; 5min ago
Process: 12645 ExecReload=/bin/kill -HUP $MAINPID (code=exited, status=0/SUCCESS)
Main PID: 13013 (crond)
CGroup: /system.slice/crond.service
└─13013 /usr/sbin/crond -n
May 06 17:20:39 iz8vbcrus31oj2axurgpjyz systemd[1]: Started Command Scheduler.
May 06 17:20:39 iz8vbcrus31oj2axurgpjyz systemd[1]: Starting Command Scheduler...
May 06 17:20:39 iz8vbcrus31oj2axurgpjyz crond[13013]: (CRON) INFO (Syslog will be used instead of sendmail.)
May 06 17:20:39 iz8vbcrus31oj2axurgpjyz crond[13013]: (CRON) INFO (RANDOM_DELAY will be scaled with factor 74% if used.)
May 06 17:20:39 iz8vbcrus31oj2axurgpjyz crond[13013]: (CRON) INFO (running with inotify support)
May 06 17:20:39 iz8vbcrus31oj2axurgpjyz crond[13013]: (CRON) INFO (@reboot jobs will be run at computer's startup.)
2.编写脚本shell,(改一下权限可执行x,我这里已经改好了)blogbak.sh
[root@iz8vbcrus31oj2axurgpjyz ~]# cd /opt/
[root@iz8vbcrus31oj2axurgpjyz opt]# ll
total 8
-rwxrwxrwx 1 root root 287 May 6 17:20 blogbak.sh
drwxrwxrwx 2 root root 4096 May 6 17:22 mysqlbak
[root@iz8vbcrus31oj2axurgpjyz opt]# cat blogbak.sh
#!/bin/sh
user="xxxx"
passwd="xxxx"
date=`date +%F`
#测试创建文件
echo "1111" > /opt/mysqlbak/test$date.txt
#备份表
/usr/local/mysql/bin/mysqldump -u$user -p$passwd blog > /opt/mysqlbak/blogbak$date.sql
#删除旧表30天前的
#find /opt/mysqlbak -mtime +30 -name "*.*" -exec rm -Rf {} \;
3.创建备份存人的文件夹/opt/mysqlbak (这里我已经创建好了)
4.添加执行定时计划任务
[root@iz8vbcrus31oj2axurgpjyz opt]# crontab -e
#两分种跑一次shell
*/2 * * * * /opt/blogbak.sh
~
5.看看列表 (下面那个错误是密码引起的,忽略它你也可以自行百度找解决办法)
[root@iz8vbcrus31oj2axurgpjyz opt]# crontab -l
*/2 * * * * /opt/blogbak.sh
[root@iz8vbcrus31oj2axurgpjyz opt]# tail /var/log/cron
May 6 17:34:01 iz8vbcrus31oj2axurgpjyz CROND[13083]: (root) CMDOUT (mysqldump: [Warning] Using a password on the command line interface can be insecure.)
May 6 17:34:23 iz8vbcrus31oj2axurgpjyz crontab[13088]: (root) BEGIN EDIT (root)
May 6 17:36:01 iz8vbcrus31oj2axurgpjyz CROND[13091]: (root) CMD (/opt/blogbak.sh)
6.重启crontab
service crond restart
7.效果
[root@iz8vbcrus31oj2axurgpjyz opt]# cd /opt/mysqlbak/
[root@iz8vbcrus31oj2axurgpjyz mysqlbak]# ll
total 828
-rw-r--r-- 1 root root 842490 May 6 17:40 blogbak2020-05-06.sql
-rw-r--r-- 1 root root 5 May 6 17:40 test2020-05-06.txt
[root@iz8vbcrus31oj2axurgpjyz mysqlbak]#
请勿发布不友善或者负能量的内容。与人为善,比聪明更重要!
该博客于2020-12-7日,后端基于go语言的beego框架开发
前端页面使用Bootstrap可视化布局系统自动生成
是我仿的原来我的TP5框架写的博客,比较粗糙,底下是入口
侯体宗的博客
文章标签
友情链接