【Mysql 三种集群模式】

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。
img

  • 持续学习,不断总结,共同进步,活到老学到老
  • 人生的本质是追寻自我的提升,包括思想、能力、意志等等。
  • 直面变化,找到背后更基础的东西,更基础的东西是用户的需求。
  • 我们的成功是我们的现在和将来决定的。今天和明天已经由昨天决定,你还可以决定后天。

非常期待和您一起在这个小小的网络世界里共同探索、学习和成长。💝💝💝 ✨✨ 欢迎订阅本专栏 ✨✨

15.Mysql 三种集群模式

MySQL 集群主要有三种模式:

  • 主从复制
  • 多主复制
  • Galera Cluster

主从复制:

主从复制是 MySQL 集群的最基本形式,主要思想是将一台 MySQL 服务器定义为主服务器,另外一台或多台 MySQL 服务器定义为从服务器。主服务器上的数据修改会同步到从服务器上,从服务器只能读取数据,不具备写入的能力。主从复制的主要原理是通过 binlog 来实现,binlog 是 MySQL 数据库的二进制日志,记录了所有的 SQL 语句以及数据变化的情况,从服务器通过读取主服务器上的 binlog 进行数据同步。

主从复制的使用场景主要是读写分离或者备份。当主服务器承担写入操作时,从服务器可以负责读取操作,从而实现负载均衡;同时,从服务器可以作为备份数据库,主服务器出现故障时可以通过从服务器来恢复数据。

多主复制:

多主复制和主从复制不同的是,多主复制中每个节点都可以进行读写操作,同时节点之间的数据同步也是相互的。当一个节点修改数据后,相应的变化会自动同步到其它节点中。多主复制的主要原理是通过对每个节点的 binlog 进行多点复制,实现数据同步。

多主复制主要的使用场景是业务分区。将不同的业务模块分配给不同的节点,每个节点可以独立地进行数据修改,同时数据也会自动同步到其他节点中。

Galera Cluster:

Galera Cluster 是一种基于 MySQL InnoDB 存储引擎的集群解决方案,是一种完全同步的多主复制技术。它与多主复制最大的不同是采用了同步复制的方式,保证了数据修改的可靠性,同时支持自动分片。

Galera Cluster 的主要实现原理是采用了一种称为”Wating Commit”的机制,当一个数据变化时,该数据不仅要向主节点同步,还要向集群中其它节点同时进行同步,直到所有节点的数据完全一致,提交操作才算成功。

由于 Galera Cluster 中没有单点故障,因此该模式被广泛应用于高可用性的业务场景。同时,全局序列号机制和自动分片功能也使得 Galera Cluster 在处理大规模数据时表现出色。

MySQL 集群的三种模式各具特点,可以根据不同的业务需求进行选择。如果需要进行读写分离或备份操作,主从复制是不错的选择;如果需要进行业务分区,多主复制可以选用;如果需要高可用性和自动分片功能,那么 Galera Cluster 是不二之选。

觉得有用的话点个赞 👍🏻 呗。
❤️❤️❤️本人水平有限,如有纰漏,欢迎各位大佬评论批评指正!😄😄😄

💘💘💘如果觉得这篇文对你有帮助的话,也请给个点赞、收藏下吧,非常感谢!👍 👍 👍

🔥🔥🔥Stay Hungry Stay Foolish 道阻且长,行则将至,让我们一起加油吧!🌙🌙🌙

img

  • 24
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
要安装MySQL集群,可以使用Docker来简化部署和管理。下面是一种常见的方法: 1. 首先,确保你已经安装了Docker和Docker Compose。 2. 创建一个新的目录,用于存放MySQL集群的配置文件和数据。在该目录下创建一个名为docker-compose.yml的文件,并添加以下内容: ``` version: '3' services: mysql1: image: mysql:latest restart: always ports: - 3306:3306 environment: MYSQL_ROOT_PASSWORD: your_password MYSQL_DATABASE: your_database MYSQL_USER: your_user MYSQL_PASSWORD: your_password volumes: - ./mysql1:/var/lib/mysql mysql2: image: mysql:latest restart: always ports: - 3307:3306 environment: MYSQL_ROOT_PASSWORD: your_password MYSQL_DATABASE: your_database MYSQL_USER: your_user MYSQL_PASSWORD: your_password volumes: - ./mysql2:/var/lib/mysql mysql3: image: mysql:latest restart: always ports: - 3308:3306 environment: MYSQL_ROOT_PASSWORD: your_password MYSQL_DATABASE: your_database MYSQL_USER: your_user MYSQL_PASSWORD: your_password volumes: - ./mysql3:/var/lib/mysql ``` 在上面的配置中,我们创建了三个MySQL容器(mysql1、mysql2和mysql3),每个容器都映射到不同的端口(3306、3307和3308)。你可以根据需要进行调整。 3. 在终端中,进入到docker-compose.yml所在的目录,并运行以下命令启动MySQL集群: ``` docker-compose up -d ``` 这将会下载MySQL镜像并启动三个容器。 4. 等待一段时间,直到容器启动完成。你可以使用以下命令检查容器的状态: ``` docker-compose ps ``` 如果所有的容器都处于"Up"状态,说明MySQL集群已经成功启动。 至此,你已经成功安装了MySQL集群。你可以使用任意MySQL客户端连接到其中一个容器的端口(例如3306),并使用配置文件中指定的用户名和密码进行登录。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值