linux 定时备份数据库

说明

检查Crontab是否安装 若没有

需要先安装Crontab定时工具

安装定时工具参考(https://www.cnblogs.com/shaohuixia/p/5577738.html)

需要使用root权限

yum -y install vixie-cron

yum -y install crontabs

编写备份的shell脚本 参考(https://blog.csdn.net/harris135/article/details/79663901)

MySQL

 cd ~
 mkdir sql
 mkdir dump
 cd dump
 touch mysqldump.sh
 vi mysqldump.sh
Docker 环境下运行
#!/bin/bash
echo "start"
docker exec 容器名称  mysqldump -u用户名 -p密码 数据库名 > ~/dump/数据库名称_$(date +%Y%m%d_%H%M%S).sql
find ~/dump/ -mtime +7 -name "*.sql" -exec rm -rf {} \
echo "success"
//单独执行shell脚本时 在容器名称前加上 -it

 



Dotnet 环境下
#!/bin/bash
echo "start"
mysqldump -u用户名 -p密码 数据库名 > ~/dump/数据库名称_$(date +%Y%m%d_%H%M%S).sql
find ~/dump/ -mtime +7 -name "*.sql" -exec rm -rf {} \
echo "success"

chmod u+x ./mysqldump.sh

 




## 编写定时任务
### 执行命令
crontab -e
### 写入内容
 */1 * * * * ~/sql/dump/mysqldump.sh

 

Redis

 cd ~
 cd sql/dump
 mkdir redis
 cd redis

 touch command.txt
 vi command.txt
 save
 退出
 touch redisdump.sh
 vi redisdump.sh

 #! /bin/sh
echo "redis数据开始备份!"
cat ~/sql/dump/redis/command.txt | ~/redis/redis-4.0.0/src/redis-cli -h '主机IP' -p 6379 -a '密码' --pipe
cp ~/redis/redis-4.0.0/src/dump.rdb ~/sql/dump/redis/redis_$(date +%Y%m%d).rdb
find ~/sql/dump/redis -mtime +7 -name "*.rdb" -exec rm -rf {} \
echo"成功"

chmod u+x ./redisdump.sh


## 编写定时任务
### 执行命令
crontab -e
### 写入内容
 */1 * * * * ~/sql/dump/redis/redisdump.sh

 

 

posted @ 2019-12-19 18:26  新手问路  阅读(230)  评论(0编辑  收藏  举报