首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

MySql读写分离配置

1.环境准备

本机环境是3台centos6.5

架构图:

2.配置MySql的读写分离

Schema.xml

Server.xml

2.创建MySql数据库

Master创建数据库

Salve会自动同步该数据库

由于Mysql已经配置好了主从复制,在创建表时,我们要注意,在Master库中创建表后,Mysql会自动在Slave库中创建一张表。这里我们需要做的是,将从库中自动创建的表删除,然后手动创建一张我们符合我们需求的表。具体操作步骤如下:

1)在主库中创建表A,引擎选择Innodb;

2)删除从库中自动创建的表A;

3)在从库中创建表A,引擎选择MyISAM;

建表带sql引擎语句样例:

Master

Slave

3.测试读写分离

开启Mycat的日志级别的debug

修改mycat的conf\log4.xml文件

启动mycat

连接MyCat

向表中插入数据,并观察MyCat的日志信息

日志信息:

可见插入被路由到了master节点。

查询表数据,并观察MyCat的日志信息

日志信息:

查询数据被路由到slave节点。

master的数据是否被同步到slave

记录成功的同步过来了,可见读写分离搭建成功!

4.两种模式的执行时间比照图

再多的废话也不如实际的测试来的有效,接下来,让我们实际测试利用这种方案能给我们带来多大的执行效率。

首先,在开启mycat的读写分离机制后,如下图:

此时写入库的引擎为Innodb,读库的引擎为MyISAM,这时使用count语句,执行时间如下图:

使用like条件语句执行时间如下图:

使用等于条件语句执行时间如下图:

接下来,我们取消读写分离机制,见下图:

此时只有写入库,并且引擎为Innodb,这时使用count语句,执行时间如下图:

使用like条件语句执行时间如下图:

使用等于条件语句执行时间如下图:

总体的执行时间对比表,见下图:

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180318G1C0YD00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券