一、读写分离的作用和实现的方式

1)读写分离的作用  

 增加用户访问并大量

 加快处理速度

2)读写分离实现的方式

 amoeba:java语言开发的读写分离工具

 mysql_proxy:Mysql官网提供需要二次开发

二、安装jdk

1、解压jdk

mysql读写分离搭建_Server

2、移动jdk安装位置

mysql读写分离搭建_sql_02

3、修改环境变量

mysql读写分离搭建_Server_03

mysql读写分离搭建_读写分离_04

4、更新环境变量

mysql读写分离搭建_Server_05

三、安装amobe

1、创建amobe目录

mysql读写分离搭建_Server_06

2、解压amobe

mysql读写分离搭建_sql_07

四、配置读写分离

1、在主Mysql创建读写分离账户

mysql读写分离搭建_读写分离_08

2、修改amoeba配置文件

mysql读写分离搭建_sql_09

mysql读写分离搭建_Server_10

mysql读写分离搭建_读写分离_11

mysql读写分离搭建_读写分离_12

<property name="port">8066</property>						//amoeba监听端口
<property name="ipAddress">192.168.100.40</property>		//amoeba监听IP地址
<property name="user">amoeba</property>						//访问amoeba账户
<property name="password">pwd@123</property>				//访问amoeba输入密码
<property name="defaultPool">master</property>				//默认访问主
<property name="writePool">master</property>				//写入访问master主库
<property name="readPool">slaves</property>					//读取访问从库

3、修改amoeba支持读写分离

mysql读写分离搭建_读写分离_13

mysql读写分离搭建_读写分离_14

mysql读写分离搭建_读写分离_15

<property name="user">amobe</property>						//指定访问数据库读写用户amobe
        <property name="password">pwd@123</property>				//指定访问数据库读写分离密码
		        <dbServer name="master"  parent="abstractServer">
                <factoryConfig>
                     <property name="ipAddress">192.168.100.10</property>		//指定主Mysql
                </factoryConfig>
        </dbServer>
        <dbServer name="slave01"  parent="abstractServer">
             <factoryConfig>
                 <property name="ipAddress">192.168.100.20</property>		//指定第一台从Mysql
             </factoryConfig>
        </dbServer>

        <dbServer name="slave02"  parent="abstractServer">
              <factoryConfig>
                 <property name="ipAddress">192.168.100.30</property>		//指定第二台从Mysql
              </factoryConfig>
        </dbServer>
		  <dbServer name="slaves" virtual="true">
        <poolConfig class="com.meidusa.amoeba.server.MultipleServerPool">
          <property name="loadbalance">1</property>
          <property name="poolNames">slave01,slave02</property>		//将两台从数据库加入slaves组
      </poolConfig>
        </dbServer>

4、启动amoeba服务

mysql读写分离搭建_Server_16

5、安装客户端通过客户端登录amobe访问Mysql数据库

mysql读写分离搭建_读写分离_17

mysql读写分离搭建_读写分离_18

6、创建数据库

mysql读写分离搭建_读写分离_19

7、从服务器停止复制

mysql读写分离搭建_sql_20

8、插入表内容发现是访问的从服务器而写入是在主服务器上

mysql读写分离搭建_sql_21

mysql读写分离搭建_读写分离_22