MySQL单机多实例的读写分离可以通过第三方软件来实现,其中一个叫简单的读写分离软件就是今天所带给大家的amoeba软件。

本次使用的amoeba软件为amoeba-mysql-binary-2.1.0-RC5.tar.gz

本软件是基于JAVA环境运行的,所以需要JAVA环境支持,具体环境配置不做详解。

本文主要解释两个主配置文件。

1、dbServer.xml  

这个文件配置的是父配置(用来给默认子配置补充配置项)

真实mysql服务器的端口,数据库名称,mysql用户及密码

主服务器,从服务器,及从服务器连接池。这里只定义数据库地址,它们的用户及密码就是上面的abstractServer里的设置。

注意用来连接真实mysql服务器的用户必须拥有远程连接权限。








${defaultManager}
64
128

172.16.1.52



amoeba

amoeba

123456



500
500
10
600000
600000
true
true







3306






1

server1







3307





1

server2


2、amoeba.xml

配置的内容为如下项:

定义连接amoeba时用来验证的用户及密码

真实的读写分离配置

defaultPool:配置了默认的数据库节点,一些除了SELECT\UPDATE\INSERT\DELETE的语句都会在             defaultPool执行。
writePool :配置了数据库写库,通常配为Master,如这里就配置为之前定义的Master数据库。
readPool :配置了数据库读库,通常配为Slave或者Slave组成的数据库池,如这里就配置之前的           virtualSlave数据库池








3306

172.16.1.9
${clientConnectioneManager}


128
64





root

123456


${amoeba.home}/conf/access_list.conf










127.0.0.1
true
${clientConnectioneManager}






200

300

300

500

60





com.meidusa.amoeba.net.ConnectionManager



com.meidusa.amoeba.net.AuthingableConnectionManager





${amoeba.home}/conf/dbServers.xml




${amoeba.home}/conf/rule.xml
${amoeba.home}/conf/ruleFunctionMap.xml


${amoeba.home}/conf/functionMap.xml
1500
server1

server1
server2
true

MySQL单机多实例的配置文件内容简单注释到此结束。