使用Docker搭建高可用Mysql数据库集群

前言

这篇文章是搭建高可用,高负载的第二篇。来学习的是搭建Mysql数据库集群,使其能够在模拟高并发的情况下,在其中的一些Mysql结点宕机的情况下也能够正常的访问,不会因为一个结点的宕机,就不能够再提供服务。在上一篇文章中讲到的是环境的搭建,具体参看linux环境搭建,里面详细讲解了环境的搭建,有需要的可以移步去看那篇文章。

具体的其中配置文件可以参看github中有一系列的文件配置信息。有需要学习的小伙伴可以对其进行下载,自行根据博客配置

正文

选择哪一种搭建集群的方式

对于mysql来说有两种搭建集群的方法:Replication与PXC,如下图所示:
在这里插入图片描述
对于第一种情况的Replication弱一致性表示是对于当前结点的数据,在集群中的另外一个结点并不一定能够访问到,所以一般也都是价值比较低的数据。对于PXC来说实现的是强一致性,表示对于任意结点中的数据在其他的结点中也都能够访问到。对于阿里的服务器集群,及当下的主流网站,对于数据库集群的搭建都是采用第二种方法,下面来看具体的信息。

PXC

对于数据的同步是双向的,数据在每一个结点上面都可以进行读写。
在这里插入图片描述
同步复制,事务在所有集群节点要么同时提交,要么不提交
在这里插入图片描述

Replication

对于数据的同步是单向的,就是例如我们在名为Master的结点上写入数据,对于Slave结点上可以读取到Master写入的数据,但是对于在Slave上写入的数据,在Master就不能读取到。
在这里插入图片描述

安装docker

既然是要在Docker上配置mysql数据库集群,这里就先在linux服务器上安装Docker(这里说明以下对于dockers也是虚拟机,VM也是虚拟机,为什么说不使用到VM进行虚拟环境的搭建,然后搭建数据库集群? 因为对于VM来说是重量级的,对于Docker来说是轻量级的。对于VM每一个Vm虚拟机都是切实占用内存空间。但是对于Docker来说多个docker虚拟机来共享分配的空间大小,基础的配置不变,只是在其上进行了进一步的封装,更加便捷与易于管理与维护)

Docker操作的基本命令

  1. 先更新软件包,其中的-y表示确定的意思
yum -y update
  1. 安装Docker虚拟机。-y也表示确定意思。
yum install -y docker
  1. 运行、重启、关闭Docker虚拟机
service docker start
service docker restart
service docker stop
  1. 搜索镜像
docker search 镜像名称
eg: docker search java

注意: 这里直接使用Docker的源镜像在国外可能会很慢,所以我们这里使用国内比较好的加速器进行加速。
DaoCloud跳转链接
复制以下代码进入到linux环境下运行,注意若是无法复制,使用XShell连接复制运行。
在这里插入图片描述
运行成功以后,输入命令 vi /etc/docker/daemon.json,将下图第一行最后的去掉。然后重新启动docker输入service docker restart
在这里插入图片描述5. 下载镜像

docker pull 镜像名称
  1. 查看镜像
docker images
  1. 删除镜像
docker rmi 镜像名称
  1. 运行容器
docker run 启动参数  镜像名称
  1. 查看容器列表
docker ps -a
  1. 停止、挂起、恢复容器
docker stop 容器ID
docker pause 容器ID
docker unpase 容器ID
  1. 查看容器信息
docker insp
  • 5
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 9
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值