kubernetes mysql pxc_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.2pxc

数据库负载均衡

安装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.2pxc

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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值