利用mysql-proxy实现MySQL的读写分离

本文介绍了如何利用MySQL-proxy实现数据库的读写分离。首先解释了读写分离的概念、原因和适用场景,然后详细阐述了安装MySQL-proxy、配置proxy端和master端的步骤,以及进行测试的过程,最终通过实验验证了读写分离的实现。
摘要由CSDN通过智能技术生成

概述:
1.什么是读写分离?

读写分离,基本的原理是让主数据库处理事务性增、改、删操作(INSERT、UPDATE、DELETE),而从数据库处理SELECT查询操作。数据库复制被用来把事务性操作导致的变更同步到集群中的从数据库。

2.为什么要读写分离?

因为数据库的“写”(写10000条数据到oracle可能要3分钟)操作是比较耗时的。但是数据库的“读”(从oracle读10000条数据可能只要5秒钟)操作比较快速。
所以读写分离,解决的是:数据库的写入,影响了查询的效率。

3.什么时候要读写分离?

数据库不一定要读写分离,如果程序使用数据库较多时,而更新少,查询多的情况下会考虑使用,利用数据库主从同步 。
可以减少数据库压力,提高性能。当然,数据库也有其它优化方案。memcache或是表折分,或是搜索引擎,都是解决方法。

4.如何实现mysql的读写分离?

MySQL读写分离是指让master处理写操作,让slave处理读操作,非常适用于读操作量比较大的场景,可减轻master的压力。
使用mysql-proxy实现mysql的读写分离,mysql-proxy实际上是作为后端mysql主从服务器的代理,它直接接受客户端的请求,
对SQL语句进行分析,判断出是读操作还是写操作,然后分发至对应的mysql服务器上。

安装包:

mysql-5.7.24-1.el7.x86_64.rpm-bundle.tar
mysql-proxy-0.8.5-linux-el6-x86-64bit.tar.gz

点击此处下载MySQL-proxy

实验环境:

server1   172.25.66.1     master   
server2   172.25.66.2     slave
server3   172.25.66.3     mysql-proxy

实验前提:

已经在server1(master)和server2(slave)结点上做好了主从复制(传统的或是基于GTID的均可)

点击此处查看MySQL主从复制
检测主从复制:

#查看slave的状态
mysql> show slave status\G;

在这里插入图片描述
在server1上:创建数据库

mysql> show databases;
mysql> create database westos;
mysql> show databases;

在这里插入图片描述
在ser

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值