mysql主从复制主从读写

本文介绍了MySQL主从复制的配置教程,并探讨了两种实现主从读写分离的方法:通过客户端如PHPYii框架和通过proxy如MaxScale。HAProxy作为负载均衡软件,能处理主从延迟和故障转移,而MaxScale则能根据SQL语句进行路由,实现更精细的读写分离。此外,MaxScale支持基于connect和statement的方式,提供了更高的灵活性和数据库高可用性。

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

一.MYSQL主从复制配置

配置教程

二.主从读写分离的两种方式

1.通过客户端实现,比如php YII框架

主从架构中会出现主从延迟主从数据不一致,以及slave的负载均衡中,当某一台slave宕机了,能否把请求转发给其他slave,可以借助第三方负载均衡软件HAProxy

HAProxy提供了高可用性、负载均衡以及基于TCP和HTTP应用的代理,它支持虚拟主机,是一种免费、快速并且可靠的解决方案。对于那些负载特大的Web站点来说,HAProxy特别适用。这些站点通常需要实现会话保持或七层处理,HAProxy运行在当前的硬件上,完全可以支持数以万计的并发连接。

HAProxy具体以下特性:

1)免费开源,稳定性非常好。

2)根据官方文档,HAProxy使用Myricom厂商的万兆网卡可以将10Gb/s的网络带宽跑满,这个数值作为软件级负载均衡器是相当惊人的。

大多数公司的架构是通过客户端方式实现的:一个主库,多个从库。主库负责写,从库负责查询,主库的高可用性通过MHA(Master High Avail-ability)实现,从库读的负载均衡通过LVS或者HAProxy实现(Java框架和PHP框架实现读/写分离)

通过HAProxy代理,基于connect方式,以及自定义脚本,可以解决slave延迟或宕机故障转

2.通过proxy解析sql实现

MaxScale使用C语言开发,利用Linux下的异步I/O功能,使用epoll作为事件驱动框架。它是MariaDB开发的一个数据库智能代理服务,允许根据数据库SQL语句将请求路由到多个服务器,且可设定各种复杂的转向规则。MaxScale可用于透明地提供数据库的负载均衡和高可用性,同时也可提供高度可伸缩和灵活的架构,支持不同的协议和路由决策。

MaxScale有两种方式实现读/写分离。

一种是基于connect的,类似于HAProxy,不解析SQL语句,可以通过PHP Yii框架或Java Mybatis框架实现。在此方式中,用MaxScale做多台slave的负载均衡,并且支持主从同步延迟检测功能。

另一种是基于statement的,要解析SQL语句。在这种方式里,前端程序不需要修改,通过MaxScale对SQL语句进行解析,把读/写请求自动路由到后端数据库节点上,从而实现读/写分离。商业软件OneProxy中间件也是基于statement方式实现读/写分离的。

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值