docker中mysql pxc集群
PXC集群 https://hub.docker.com/r/percona/percona-xtradb-cluster 安装PXC镜像 下载镜像或者导入本地镜像 docker pull percona/percona-xtradb-cluster docker load < /home/soft/pxc.tar.gz 修改镜像名字 docker tag docker.io/percona/percona-xtradb-cluster pxc 删除镜像 docker rmi docker.io/xx 查看镜像 docker images 创建内部网络 docker network create net1 docker network inspect net1 docker network rm net1 创建Docker卷 容器中的pxc节点映射数据目录的解决办法 docker volume create --name v1 查看 docker inspect v1 删除 docker volume rm v1 实战 docker volume create v1 docker volume create v2 docker volume create v3 docker volume create v4 docker volume create v5 docker run -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -e CLUSTER_NAME=PXC -e XTRABACKUP_PASSWORD=ABC123456 -V V1:/var/lib/mysql --privileged --name=node --net=net1 --ip 172.18.0.2 pxc 数据库负载均衡 安装Haproxy镜像 docker pull haproxy 创建Haproxy配置文件 touch /home/soft/haproxy.cfg 创建Haproxy容器 docker run -it -d -p 4001:8888 -p 4002:3306 -v /home/soft/haproxy:/usr/local/etc/haproxy --name haproxy --privileged --net=net1 haproxy haproxy -f /usr/local/etc/haproxy/haproxy.cfg 进入一个允许容器 docker exec -it h1 bash haproxy -f /usr/local/etc/haproxy/haproxy.cfg CREATE USER 'haproxy'@'%’ IDENTIFIED BY ''; 配置keepalived 启动 Keepalived service keepalived start 数据库热备份 MYSQL常见的热备有LVM和XtraBackUp两种方案 全量备份和增量备份 创建数据卷 用于映射宿主机内和容器内路径 docker volume create backup docker run -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=abc123456 -e CLUSTER_NAME=PXC -e XTRABACKUP_PASSWORD=abc123456 -v v1:/var/lib/mysql -v backup:/data --privileged -e CLUSTER_JOIN=node2 --name=node1 --net=net1 --ip 172.18.0.2 pxc pxc全量备份步骤 apt-get update apt-get install percona-xtrabackup-24 全量备份 innobackupex --user=root --password=abc123456 /data/backup/full pxc全量恢复步骤 第一步 删除 mysql数据 rm -rf /var/lib/mysql/* 第二步 apply-back 回滚没有提交的事务 innobackupex --user=root --password=abc123456 --apply-back /data/backup/full/2018-04-15_05-09-07/ 第三步 copy-back还原的意思 innobackupex --user=root --password=abc123456 --copy-back /data/backup/full/2018-04-15_05-09-07/ 还原冷备份 数据 前提工作 docker stop node1 node2 node3 node4 node5 停掉5个pxc节点 docker rm node1 node2 node3 node4 node5 删除5个pxc节点 docker volume rmn v1 v2 v3 v4 v5 删除映射的数据卷 docker volume create v1 创建新的数据卷 启动一个pxc节点 docker run -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=abc123456 -e CLUSTER_NAME=PXC -e XTRABACKUP_PASSWORD=abc123456 -v v1:/var/lib/mysql -v backup:/data --privileged -e CLUSTER_JOIN=node2 --name=node1 --net=net1 --ip 172.18.0.2 pxc 进入node1节点容器 docker exec -it node1 bash 执行冷还原 pxc全量恢复步骤 退出一下容器 exit 重启下node1节点 docker stop node1 docker start node1
早年同窗始相知,三载瞬逝情却萌。年少不知愁滋味,犹读红豆生南国。别离方知相思苦,心田红豆根以生。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
2017-07-18 Spring+SpringMVC+MyBatis深入学习及搭建(十三)——SpringMVC入门程序(二)