数据库中间件MyCat(二)-mysql实现主从复制

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/wangwei_620/article/details/85698943

前言:

         我们考虑到一些大型的数据库数据库读写分离对于大型系统或者访问量很高的互联网应用来说,是必不可少的一个重要功能。从数据库的角度来说,对于大多数应用来说,从集中到分布,最基本的一个需求不是数据存储的瓶颈,而是在于计算的瓶颈,即SQL查询的瓶颈,我们知道,正常情况下,Insert SQL就是几十个毫秒的时间内写入完成,而系统中的大多数Select SQL则要几秒到几分钟才能有结果,很多复杂的SQL,其消耗服务器CPU的能力超强,不亚于死循环的威力。在没有读写分离的系统上.

      对于 MySQL 来说,标准的读写分离是主从模式,一个写节点 Master 后面跟着多个读节点,读节点的数量取决于系统的压力,通常是 1-3 个读节点的配置.

一.mysql主从复制的环境

mysql版本:5.5.49

主服务器:linux

主服务器IP:192.168.72.133

从服务器:linux

从服务器IP:192.168.72.134

二.mysql主从复制原理和注意点

原理:主服务器(Master)负责网站NonQuery操作,从服务器负责Query操作,用户可以根据网站功能模特性块固定访问Slave服务器,或者自己写个池或队列,自由为请求分配从服务器连接。主从服务器利用MySQL的二进制日志文件,实现数据同步。二进制日志由主服务器产生,从服务器响应获取同步数据库

        主服务器:开启二进制日志 BinaryLog
        从服务器:配置读的节点,不停的监听
注意:

扫描二维码关注公众号,回复: 4779459 查看本文章

主从版本一致,

主DB server开启二进制日志和从DBserverde server开启二进制日志和从DBserver的server_id都必须一致

主数据库和从数据库的表必须都相同

三.mysql主服务器的配置

首先我们主从数据库中创建相同的表结构db1    db2     db3

第一步:修改mysql的配置文件 /etc/my.conf

mysqlID段下
            binlog-do-db=db1
            binlog-ignore-db=mysql
            开启二进制:
            log-bin=mysql-bin
            服务器id唯一:
            server-id=134

第二步:从新启动mysql服务  service mysql restart

第三步:建立账户& 授权  刷新权限

在主服务器上授权:


第四步:查看主服务器的状态 show master status

四.mysql从服务器的配置

第一步:修改my.conf文件
             [mysqlId]

第二步:配置从服务器

change master to master_host='192.168.72.133',master_port=3306,master_user='repl'
,master_password='123456',master_log_file='mysql-bin.000001',master_log_pos=120

第三步:启动服务器

start slave

第四步:检查 服务器主从是否配置成功

show slave status

如上我们看不清,我们通过数据库连接,后查看

错误记录:

Slave_IO_State: Connecting to master

这个错误原因是这样的,我把主服务器的用户名写错了,一直处于连接状态,改变后连接成功

测试主从:插入一条数据

测试成功,主表插入数据,从表可以看到

五.MyCat的配置

WriteType参数配置:

测试myCat的读写分离:

猜你喜欢

转载自blog.csdn.net/wangwei_620/article/details/85698943