- 1、编写备份数据库的脚本
- 2、配置linux定时任务
- For details see man 4 crontabs
- Example of job definition:
- .———————— minute (0 - 59)
- | .——————- hour (0 - 23)
- | | .————— day of month (1 - 31)
- | | | .———- month (1 - 12) OR jan,feb,mar,apr …
- | | | | .—— day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
- | | | | |
- * user-name command to be executed
- 3、定时任务crontab相关命令
- 3、配置刚刚的shell脚本执行
- For details see man 4 crontabs
- Example of job definition:
- .———————— minute (0 - 59)
- | .——————- hour (0 - 23)
- | | .————— day of month (1 - 31)
- | | | .———- month (1 - 12) OR jan,feb,mar,apr …
- | | | | .—— day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
- | | | | |
- * user-name command to be executed
- 每天 凌晨4点10分开始备份联云数据库数据
1、编写备份数据库的脚本
1、流程说明
- 我们通过linux自带的定时任务,来执行我们提前写好的备份数据库的shell脚本
- 第一步就是创建一个备份数据库shell脚本
- 第二步更改shell脚本文件的权限
-
2、主机中mysql中的备份
1、命令如下
某个数据库的命令
#/bin/bash
mysqldump -uroot -p密码 数据库名称 | gzip > /mydata/mysql/bk/lianyun_$(date +%Y%m%d_%H%M%S).sql.gz
2、保存成一个文件
参考这个sh脚本
3、文件权限修改
chmod 755 lianyun_mysql_bk.sh
3、docker中备份数据库数据
命令其实就是加了点docker的命令
#/bin/bash docker exec mysql mysqldump -uroot -p密码 seat | gzip > /mydata/mysql/bk/seat_$(date +%Y%m%d_%H%M%S).sql.gz
-
2、配置linux定时任务
-
1、查看全局配置的定时任务
```shell [root@iZwz9eoz7k4q3y6nndxzhiZ bk]# cat /etc/crontab SHELL=/bin/bash PATH=/sbin:/bin:/usr/sbin:/usr/bin MAILTO=root
For details see man 4 crontabs
Example of job definition:
.———————— minute (0 - 59)
| .——————- hour (0 - 23)
| | .————— day of month (1 - 31)
| | | .———- month (1 - 12) OR jan,feb,mar,apr …
| | | | .—— day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
| | | | |
* user-name command to be executed
<a name="h88ub"></a>
## 2、添加一条定时任务配置
<a name="B20gw"></a>
### 1、配置例子学习
<a name="lUWYW"></a>
#### 1、添加内容(例子)
- (每个星期日凌晨2:00重启禅道)
```shell
0 2 * * 0 root cd /root/zentao && docker-compose down && docker-compose up --build
2、每分钟运行 指定的bianyi.sh脚本文件
*/1 * * * * root /home/lenovosh/work/bianyi.sh
3、每个月的1号14:10运行 指定的bianyi.sh脚本文件
10 14 1 * * root /home/lenovosh/work/bianyi.sh
4、每周一、三、五凌晨00:01运行 指定的bianyi.sh脚本文件
1 0 * * 1,3,5 root /home/lenovosh/work/bianyi.sh
5、每天零点准时关机
0 0 * * * * root shutdown –a now
3、定时任务crontab相关命令
1、重载crontab文件
service cron reload
2、重启crontab服务
service cron restart
3、等待任务执行结果
(可用命令追踪任务)
service cron status
3、配置刚刚的shell脚本执行
1、编辑crontab
vim /etc/crontab
2、添加每天凌晨4点10分开始备份联云数据库数据
# 每天 凌晨4点10分开始备份联云数据库数据 10 4 * * * root /mydata/mysql/bk/mysql_bk.sh
3、查看刚刚配置的,这样每天就会自动执行了
配置好之后就可以了,无需重启cron服务 ```shell [root@iZwz9eoz7k4q3y6nndxzhiZ bk]# cat /etc/crontab SHELL=/bin/bash PATH=/sbin:/bin:/usr/sbin:/usr/bin MAILTO=root
For details see man 4 crontabs
Example of job definition:
.———————— minute (0 - 59)
| .——————- hour (0 - 23)
| | .————— day of month (1 - 31)
| | | .———- month (1 - 12) OR jan,feb,mar,apr …
| | | | .—— day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
| | | | |
* user-name command to be executed
每天 凌晨4点10分开始备份联云数据库数据
10 4 * root /mydata/mysql/bk/mysql_bk.sh