mysql数据库全量备份和增量备份(docker容器部署方式)

本文详细介绍了如何在Docker容器中进行MySQL数据库的全量备份和增量备份,包括创建备份数据库容器、建立数据卷、安装必要软件、编写备份脚本、设置定时任务以及恢复和优化恢复速度的方法。同时,还提到了查看系统和日志的相关步骤,以确保备份过程的可监控性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

1、创建备份数据库容器(参考监控相关下面的mysql安装)

# 建立挂载的数据卷

mkdir -p /opt/mysql/data
 
# 虚拟机 3307 端口和容器里的3306端口对应,虚拟机路径和容器里路径(下图,来自头部参考地址)对应
docker run -p 3307:3306 --restart="always" --name mysqlbackup -v /opt/mysql/data:/var/lib/mysql \
-v /opt/mysqlbackup/daily:/opt/mysqlbackup/daily -v /opt/mysqlbackup/backup:/opt/mysqlbackup/backup -e MYSQL_ROOT_PASSWORD=123456 -d --privileged=true mysqlbackup
 
 

2、yum安装包存放在目录/var/cache/yum/package,将之拷贝到容器里

docker cp crontabs-1.11-6.20121102git.el7.noarch.rpm mysql:/usr/share/package
 
 
进入到容器的当前目录下通过rpm离线安装相关软件
 
rpm -Uvh --force --nodeps *.rpm
 
 
以上方式可通过apt安装,貌似要联网
安装vim apt-get update && apt-get install vim
安装定时任务 apt-get install cron  
安装yum指令 apt-get install yum
 
 

3、新建备份脚本

 
备份准备工作
创建目录
mkdir -p  /opt/mysqlbackup
touch  backup.sh
 
文件赋权
chmod +x /opt/mysqlbackup/backup.sh
 
全量备份脚本
cat >/opt/mysqlbackup/backup.sh <<EOF
#!/bin/sh
zcDATE=$(date +%Y%m%d)
mkdir -p /opt/mysqlbackup/backup/$zcDATE
mysqldump -h '192.168.1.36' -uroot -p'123456'  --quick --events  --databases mysql --flush-logs --delete-master-logs --single-transaction > /opt/mysqlbackup/backup/$zcDATE/mysql.sql
EOF
 
 
 
MySQL上存在两个数据库,名称分别是 db1 和 db2,利用这种方式在硬盘上备份数据。-h表示远程的服务器IP。-u 和 -p 分别是远程服务器的用户名和密码。这里不建议使用 mysqldump 的 –-all-databa
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

alexander137

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值