干货 | MySQL双主(主主)配置的过程,让你了解mysql的架构

本文详细介绍了MySQL双主(主主)配置的步骤和思路,旨在提高数据库的高可用性。通过设置奇偶自增ID避免冲突,两台MySQL服务器互为主从,采用非抢占模式的VIP策略,确保在主库故障时能快速切换,同时分析了双主架构可能存在的不足和同步延迟问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在企业中,数据库高可用一直是企业的重中之重,中小企业很多都是使用mysql主从方案,一主多从,读写分离等,但是单主存在单点故障,从库切换成主库需要作改动。因此,如果是双主或者多主,就会增加mysql入口,增加高可用。不过多主需要考虑自增长ID问题,这个需要特别设置配置文件,比如双主,可以使用奇偶,总之,主之间设置自增长ID相互不冲突就能完美解决自增长ID冲突问题。

MySQL双主(主主)架构方案思路是:
1.两台mysql都可读写,互为主备,默认只使用一台(masterA)负责数据的写入,另一台(masterB)备用;

2.masterA是masterB的主库,masterB又是masterA的主库,它们互为主从;

3.两台主库之间做高可用,可以采用keepalived等方案(使用VIP对外提供服务);

4.所有提供服务的从服务器与masterB进行主从同步(双主多从);

5.建议采用高可用策略的时候,masterA或masterB均不因宕机恢复后而抢占VIP(非抢占模式);

这样做可以在一定程度上保证主库的高可用,在一台主库down掉之后,可以在极短的时间内切换到另一台主库上(尽可能减少主库宕机对业务造成的影响),减少了主从同步给线上主库带来的压力;

但是也有几个不足的地方:

1.masterB可能会一直处于空闲状态(可以用它当从库,负责部分查询);

2.主库后面提供服务的从库要等masterB先同步完了数据后才能去masterB上去同步数据,这样可能会造成一定程度的同步延时;

架构的简易图如下:
在这里插入图片描述

配置过程:

1、各节点使用一个唯一server_id;

2、都启动binary_bin和relay_log;

3、创建拥有复制权限的用户账户;

4、定义自动增长id字段的数值范围为求偶;

5、均把对方指定为主节点,并启动复制线程;

主主的环境:两台Centos6.9的系统,mysql

IP地址的分配:node1 192.168.4.80

node2 192.168.4.81

搭建过程如下:

首先两个节点安装好mysql:
在这里插入图片描述

两个节点都需要安装mysql,不管是源码安装还是rpm安装都需要安装成功。

node1节点的my.cnf配置:
在这里插入图片描述

node2节点my.cnf配置如下:
在这里插入图片描述
![在这里插入图片描述](https://img-blog.csdnimg.cn/20200121125840854.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3B5dGhvbmFkaW91,size_16,color_FFFFF在这里插入图片描述
在这里插入图片描述
启动start slave;在这里插入图片描述
这样node1为主节点,node2位从节点配置完成;

同理,node1从,node2主,同样配置;来一遍,那样主主配置就完成了。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值