分类目录: linux
jenkins定时备份docker的mysql
Post date:
Author: cyy
标签: Docker, mysql, Publish over SSH
Number of comments: no comments
jenkins定时备份docker的mysql
我这边mysql的环境:
用docker搭了一个mysql,偶然在网上看到docker容器里的mysql可以备份sql文件,代码如下:
-u数据库账号,不需要空格隔开,如数据库账号为root,则 -uroot
-p数据库密码,不需要空格隔开,如数据库密码为123456,则-p123456
tootootool改为你要备份的数据库名称
>后边跟你要导出的sql文件名称
docker exec -i mysql mysqldump -uroot -p123456 tootootool > tootootool.sql
备份基础有了,现在开始编写jenkins脚本:
先安装jenkins的插件:Publish over SSH
之后再配置要备份数据库的服务器地址
配置定时构建:H 06 * * *,每天早上6点开始执行任务
脚本如下:
filename=`date +%Y%m%d%H%M%S`:生成一个变量,用来存当前的时间戳
之后执行对应的导出指令就好了
filename=`date +%Y%m%d%H%M%S`
cd /home/cyy
mkdir -p backup/mysql
cd /home/cyy/backup/mysql
cd /home/cyy/backup/mysql
mkdir -p tootootool
cd /home/cyy/backup/mysql/tootootool
docker exec -i mysql mysqldump -u数据库账号 -p数据库密码 数据库名称 > 导出的文件名-$filename.sql
完成!
PS:如果mysql是别的服务器,可以考虑用SCP指令拉回本地服务器
PS:如果有群辉,可以考虑用DVA来定时拉取