超简单数据库备份 freecrazy 2021-11-18T20:45:42+08:00 1120

数据库备份,丢掉祖传脚本,docker一键搞定

前面部署了mariadb及redis,我们需要每天都给它备份,毕竟数据无价。

像我自己的一个小日记网站,几千条日记基本上都是保存至数据库中的,所以每天定时给他备份尤为重要。

自从了解了docker,就总想着啥事都用docker搞定,毕竟方便还不占内存,何乐不为呢。

多方查证,找到了使用人数最多的镜像 databack/mysql-backup ,比起以前编写复杂备份脚本及定时任务,确实方便多了。

这也印证了那句话“不学习,毋宁死”,以前费劲心思写的备份脚本突然之间就被一键替代了。

似喜似悲,说的就是这个感态吧。

得得得,废话少说,上结果。

一、编写docker-compose.yml

官网对各项参数都有解释,做个好人,我把它翻译成国人易懂的语言了。

这个镜像支持备份数据到本地、SMB、S3三个。

我这里选择上传到七牛云上,因为它便宜(充值了20元,2年后的今天还有19.9元),而且支持S3。

你可以备份到本地,把数据挂载出来就行了,具体看官网配置。

下面是docker-compose内容

version: '3.3'
services:
  backup:
    image: databack/mysql-backup
    environment:
     - DB_DUMP_TARGET=s3://self-note/s3-cn-east-1.qiniucs.com #s3的地址
     - AWS_ACCESS_KEY_ID=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX # 密码
     - AWS_SECRET_ACCESS_KEY=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX # 密码
     - AWS_ENDPOINT_URL=http://s3-cn-south-1.qiniucs.com #七牛地址
     - AWS_DEFAULT_REGION=cn-south-1 # 区域
     - DB_DUMP_CRON=0 0 3 * * ? *  #多久备份,这里是每天凌晨3点
     # - RUN_ONCE  #只运行一次,与上面的只能存在一个
     - DB_USER=root # 数据库用户名
     - DB_PASS=123456 #数据库密码
     - DB_NAMES=diary #要备份的数据库,把这行注释掉会备份整个数据库
     - DB_SERVER=mariadb  #数据库地址,我这里用的是docker网里面的,
     - COMPRESSION=bzip2 #压缩算法,
     - NICE=true # 这还要解释?nice自然备份效果会很nice啦
     - DB_PORT=3306 # 端口号,不写默认3306

networks: # docker加入的网络,再这个网络下才能找到mariadb这个地址,不知道的翻一下前面的内容
  default:
    external: true
    name: dbnet

简单说下七牛云的用法,都是中文应该很容易,注册登录,然后进入到对象存储Kodo,点击空间管理,新建空间。

image-20211118221149811

点击空间名称,找到S3域名,点击查看,跟着我那格式来,别填错了。

image-20211118221356484

然后最关键的授权密码那两个,点击头像,密钥管理,没有就新建。

image-20211118221607239

二、运行

老规矩,养成习惯,在opt目录下新建备份目录,再新建docker-compose.yml复制进去,最后运行。

可以先把文件里面的定时那一行注释掉,放开RUN_ONCE,然后看七牛空间里面多了文件没有。

mkdir /opt/dbbackup # 建
cd /opt/dbbackup  # 进
vi docker-compose.yml # 复制进去
docker-compose up -d # 运行

运行之后可以使用下面命令查看是否出错

docker-compose logs -f

我这里是成功截图

image-20211118223534191

查看七牛空间文件管理,发现多了一个文件了,将它下载下来,解压桌面备用。

三、测试

登录前面搭建好的adminer,登录进去,点击导入,选择文件,最后执行,数据就都有了。

image-20211118224307279

行吧,现在使用下面命令把容器停了。

docker-compose down

把刚才的RUN_ONCE去掉,把定时备份给换上,重新运行,这样每天凌晨3点就会自动备份数据了。

可以高枕无忧地去写日记了。

收工。

© 2021 - 2024 闲余悟道

载入运行时间...

avatar
关于我

癫狂乐天,狂放不羁,叛世逆俗,天纯不可一世。

跑酷

游戏玩腻,自个寻的,只喜纯跑,不喜炫技

滑板

身处异乡,未找到跑酷伙伴,转投滑板,oli练到死

骑行

通勤会的,通着通着成了爱好,不攀里数,不懂车构,菜腿一枚

爬山

老妈生错了生肖,喜欢在台阶或石头上蹦跶

设计

大学学的,PS效率实用流

代码

培训得的,已弃坑,得益于此,软件玩得起飞,如本博客内容

剪辑

无聊学的,人生苦短,想学的太多,学会罢了,我应该会了了吧……

写作

读书多了自然而然就……he,tui,人人都会,正在精进中

独自环过岛

海南岛,9天骑行,一人一包一帐篷,事故故事一堆堆

只身入过藏

心之所向,21点的太阳妙不可言

万里路

不少,如……

万卷书

微多,如……


人生苦短,繁华三千,可纵情声色,亦可摇桨泛舟。

碎年流光,若都平淡如水,岂非虚度一遭。

波澜不惊的一生虽不可恨,但数载光阴就历尽沧桑的生活应该更畅快。

别试图在文章末尾评论处留言,那只是摆设,不过若是打赏,我定会收到心意。联系方式本页社交链接中有猫腻。

清心决

心若冰清,天塌不惊。

万变犹定,神怡气静。

尘垢不沾,俗相不染。

虚空甯宓,浑然无物。

无有相生,难易相成。

份与物忘,同乎混涅。

天地无涯,万物齐一。

飞花落叶,虚怀若谷。

千般烦忧,才下心头。

即展眉头,灵台清幽。

心无挂碍,意无所执。

解心释神,莫然无魂。

水流心不惊,云在意俱迟。

一心不赘物,古今自逍遥。

自由转载-非商用-转载注明出处即可。