Mysql集群方案简介
集群的好处
- 高可用性:故障检测及迁移,多节点备份。
- 可伸缩性:新增数据库节点便利,方便扩容。
- 负载均衡:切换某服务访问某节点,分摊单个节点的数据库压力。
集群要考虑的风险
- 网络分裂:群集还可能由于网络故障而拆分为多个部分,每部分内的节点相互连接,但各部分之间的节点失去连接。
- 脑裂:导致数据库节点彼此独立运行的集群故障称为“脑裂”。这种情况可能导致数据不一致,并且无法修复,例如当两个数据库节点独立更新同一表上的同一行时。
大致有6种方案
- mysql官方提供的方案
- MySQL Replication
- MySQL Fabirc
- MySQL Cluster
- 第三方方案
- MMM (Master Replication Manager for MySQL)
- 依托硬件的方案
- 心跳检测+SAN共享存储
- 心跳检测+DRDB磁盘复制
mysql官方提供的方案
方案1:MySQL Replication
mysql复制(MySQL Replication),是mysql自带的功能。
主从复制是通过重放binlog实现主库数据的异步