centos使用shell脚本定时备份docker中的mysql数据库
shell脚本
#!/bin/bash #容器ID
container_id="6b1faea2b4d7"
#登录用户名
mysql_user="root"
#登录密码(注意 如果密码包含特殊符号 前面要用'\')
mysql_password="Yvi\$123"
mysql_port="3306"
#备份的数据库名
mysql_database="clne"
# 备份文件存放地址(根据实际情况填写)
backup_dir="/home/data/crontab/data"
# 是否删除过期数据
expire_backup_delete="true"
#过期天数
expire_days=3
backup_time=`date +%Y%m%d%H%M` # 备份指定数据库中数据
docker exec $container_id mysqldump -P$mysql_port -u$mysql_user -p$mysql_password $mysql_database > $backup_dir/bak-$mysql_database-$backup_time.sql # 删除过期数据
if [ "$expire_backup_delete" == "true" -a "$backup_dir"!="" ];then
`find $backup_dir/ -type f -mtime +$expire_days | xargs rm -rf`
echo "Expired backup data delete complete!"
fi
赋予权限
chmod 777 脚本.sh
可以这里先执行下脚本看下效果
如果shell脚本报错:.sh: /bin/bash^M: 坏的解释器: 没有那个文件或目录
参考:https://www.cnblogs.com/pxblog/p/15094666.html
保存后
修改 配置定时任务
vim /etc/crontab
添加
0 0 * * * root . /etc/profile;/bin/sh /home/脚本.sh
后面的脚本要使用绝对路径
前面那个是cron 可以根据自己的来修改(上面这个示例表示每天0点执行一次)
常用的
0 */2 * * * 意思是每两个小时 50 7 * * * 意思是每天7:50 50 22 * * * 意思是每天22:50 0 0 1,15 * * 每月1号和15号 1 * * * * 每小时的第一分执行 30 6 */10 * * 意思是每月的1、11、21、31日是的6:30执行一次
然后重启crontab服务
service crond restart
然后就可以看是否执行
cat /var/log/cron
查看日志
centos使用shell脚本定时备份docker中的mysql数据库的更多相关文章
- linux自动定时备份web程序和mysql数据库
前些天受朋友说linux定时备份不知道怎么搞,叫帮忙处理一下.由于这段时间正闲着,所以也就欣然答应.由于朋友对linux不懂也希望我将操作的过程记录下来,也就是越详细越好.所以写得比较$%^& ...
- docker中使用mysql数据库详解(在局域网访问)
开发过程中经常需要安装.调试mysql数据库,还需要在各种操作系上安装包依赖,实在是繁琐,因此就研究了一下如何在docker上运行一个mysql镜像,省却了我安装.找依赖的问题. 注:本文所有内容均在 ...
- 在docker中使用mysql数据库,在局域网访问
1.获取mysql镜像 docker pull mysql:5.6 注意:此处之所以获取mysql5.6是因为mysql5.7在centos7中启动可能会报错 2.查看镜像列表 docker imag ...
- Linux VPS自动定时备份网站文件和MYSQL数据库到FTP空间(LNMP)
如果我们网站更新不是很频繁,我们可以定期手动进行备份网站文件和MYSQL数据库导出.如果我们网站数据更新频繁,且数据尤为重要,建议要采用定期自动 备份,至少需要多备份数据,无论我们选择何种优秀的VPS ...
- shell脚本连接、读写、操作mysql数据库实例
本文介绍了如何在shell中读写mysql数据库.主要介绍了如何在shell 中连接mysql数据库,如何在shell中创建数据库,创建表,插入csv文件,读取mysql数据库,导出mysql数据库为 ...
- 黄聪:VPS实现自动定时备份网站数据以及Mysql数据库到百度云同步盘
建站多了,备份成了头疼的问题,因为你不知道你的VPS什么时候会宕机或者服务商跑路,一旦网站数据丢失,那么相当于前功尽弃了,所以自己研究出了一套自动备份的方法. 需要的东西: 1.一个VPS(虚拟空间没 ...
- 使用shell脚本定时备份web网站代码
#!/bin/bash ############### common file ################ #备份文件存放目录 WEBBACK_DIR="/data/backup/ba ...
- shell脚本定时备份数据库
脚本代码: 新建文件back_db.sh #!/bin/bash TODAYTIME="`date +%Y%m%d`" DBNAME="test mysql" ...
- Docker中查看Mysql数据库中的各环境参数
通过官方的文档可以看到运行MySQL容器的命令是: docker run --name some-mysql -e MYSQL_ROOT_PASSWORD=mypwd -d mysql:tag 如:d ...
随机推荐
- Codeforces 917D - Stranger Trees(矩阵树定理/推式子+组合意义)
Codeforces 题目传送门 & 洛谷题目传送门 刚好看到 wjz 在做这题,心想这题之前好像省选前做过,当时觉得是道挺不错的题,为啥没写题解呢?于是就过来补了,由此可见我真是个大鸽子(( ...
- Kruskal 重构树小记
其实也不是多难的知识点吧--学了一个中午+半个下午就把它学会了(做过那道 jxd 作业 CF571D 的应该比较好理解) Kruskal 重构树大概就是在正常 Kruskal 的时候,对于两个需要连边 ...
- python-django-自定义查询Q函数和F函数
数据库: def page_q(request): """Q函数的使用""" #查询username和nickname都是zhangsan ...
- python-django使用ORM模型增删改查CRUD
from weibo.models import WeiboUser as User user_obj = User.objects.get(pk=1) user_obj.pk Out[4]: 1 u ...
- python12对象初
- windows和linux文本的编码格式不一样所出的错
windows下编写的python脚本上传的linux下执行会出现错误: usr/bin/python^M: bad interpreter: No such file or directory 原因 ...
- Windows cmd 命令行基本操作
Windows cmd 命令行基本操作 1. 进入到指定根目录 注意:不区分大小写 例如进入到 D 盘 2. 进入到指定的目录 例如 (如果目录文件名太长,可以使用 tab 键来自动补全.重复按可以进 ...
- A Child's History of England.33
To strengthen his power, the King with great ceremony betrothed his eldest daughter Matilda, then a ...
- 22 SHELL 获取当前路径
常见的一种误区,是使用 pwd 命令,该命令的作用是"print name of current/working directory",这才是此命令的真实含义,当前的工作目录,这里 ...
- 大数据学习day11------hbase_day01----1. zk的监控机制,2动态感知服务上下线案例 3.HDFS-HA的高可用基本的工作原理 4. HDFS-HA的配置详解 5. HBASE(简介,安装,shell客户端,java客户端)
1. ZK的监控机制 1.1 监听数据的变化 (1)监听一次 public class ChangeDataWacher { public static void main(String[] arg ...