数据库Mycat读写分离中间件是什么?极悦小编来告诉大家。
1.准备两台主机安装好mysql
2.能够互相ping通或使用mysql命令(mysql -uroot -p123456 -h 192.168.2.100)能够相互访问
3.mycat的读写分离是基于mysql的主从复制,所以需要先mysql主从复制。
http://dl.mycat.org.cn/1.6.7.4/Mycat-server-1.6.7.4-release/
解压后即可使用,在conf文件夹下有三个主要配置文件如下:
1.scheme.xml: 定义逻辑库,表,分片节点等内容。
2.rule.xml: 定义分片规则。
3.server.xml: 定义用户以及系统相关变量,如端口等。
<?xml version="1.0"?>
<!DOCTYPE mycat:schema SYSTEM "schema.dtd">
<mycat:schema xmlns:mycat="http://io.mycat/">
<schema name="TESTDB" checkSQLschema="false" sqlMaxLimit="100" dataNode="dn1">
</schema>
<dataNode name="dn1" dataHost="host1" database="dw-study" />
<dataHost name="host1" maxCon="1000" minCon="10" balance="3"
writeType="0" dbType="mysql" dbDriver="native" switchType="1" slaveThreshold="100">
<heartbeat>select user()</heartbeat>
<!-- can have multi write hosts -->
<writeHost host="hostM1" url="10.167.19.114:3306" user="root"
password="123456">
<!-- can have multi read hosts -->
<readHost host="hostS2" url="10.167.19.115:3306" user="root" password="123456" />
</writeHost>
</dataHost>
</mycat:schema>
修改用户名、密码、mycat逻辑数据库名字
快速启动mycat
cd /bin# 启动mycat
./mycat start# 停止mycat./mycat stop
进入mycat
mysql -umycat -p1234 -h10.167.19.114 -P 8066
-u : server.xml中配置的 user
-p : 密码
-h : mycat所在主机
-P: mycat默认端口
修改 Mycat 的配置文件 schema.xml 修改的balance属性,通过此属性配置读写分离的类型
为了双主双从读写分离balance设置为1
…
<dataNode name="dn1" dataHost="host1" database="testdb" />
<dataHost name="host1" maxCon="1000" minCon="10" balance="1"
writeType="0" dbType="mysql" dbDriver="native" switchType="1"
slaveThreshold="100" >
<heartbeat>select user()</heartbeat>
<!-- can have multi write hosts -->
<writeHost host="hostM1" url="192.168.140.128:3306" user="root"
password="123123">
<!-- can have multi read hosts -->
<readHost host="hostS1" url="192.168.140.127:3306" user="root"
password="123123" />
</writeHost>
<writeHost host="hostM2" url="192.168.140.126:3306" user="root"
password="123123">
<!-- can have multi read hosts -->
<readHost host="hostS2" url="192.168.140.125:3306" user="root"
password="123123" />
</writeHost>
</dataHost>
…
#balance="1": 全部的readHost与stand by writeHost参与select语句的负载均衡。
#writeType="0": 所有写操作发送到配置的第一个writeHost,第一个挂了切到还生存的第二个
#writeType="1",所有写操作都随机的发送到配置的 writeHost,1.5 以后废弃不推荐
#writeHost,重新启动后以切换后的为准,切换记录在配置文件中:dnindex.properties 。
#switchType="1": 1 默认值,自动切换。
# -1 表示不自动切换
# 2 基于 MySQL 主从同步的状态决定是否切换。
以上就是关于“数据库Mycat读写分离中间件”的介绍,大家如果对此比较感兴趣,想了解更多相关知识,不妨来关注一下本站的Mycat教程,里面还有更丰富的知识等着大家去学习,希望对大家能够有所帮助。
你适合学Java吗?4大专业测评方法
代码逻辑 吸收能力 技术学习能力 综合素质
先测评确定适合在学习