jenkins定时备份docker的mysql

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

Publish over SSH

之后再配置要备份数据库的服务器地址

配置要备份数据库的服务器地址
配置要备份数据库的服务器地址

配置定时构建:H 06 * * *,每天早上6点开始执行任务

jenkins定时备份docker的mysql
jenkins定时备份docker的mysql

脚本如下:

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
jenkins定时备份docker的mysql
jenkins定时备份docker的mysql

完成!

PS:如果mysql是别的服务器,可以考虑用SCP指令拉回本地服务器

PS:如果有群辉,可以考虑用DVA来定时拉取

原文链接:,转发请注明来源!

发表评论