Mycat实现读写分离

Mycat实现读写分离

Mycat支持MySQL主从复制状态绑定的读写分离机制。这里实现的也是基于MySQL主从复制的读写分离。

MySQL主从复制配置

首先要配置MySQL的主从复制,这里配置的是一主一次从。可以参考下面的文章。
https://blog.csdn.net/wsb_2526/article/details/134367551

MyCat配置

schema.xml文件配置


DOCTYPE mycat:schema SYSTEM "schema.dtd">
<mycat:schema xmlns:mycat="http://io.mycat/">

        
        <schema name="TESTDB" checkSQLschema="true" sqlMaxLimit="100" randomDataNode="dn1">
        schema>

		
        <dataNode name="dn225" dataHost="db225" database="TESTDB" />
        
		
        <dataHost name="db225" maxCon="1000" minCon="10" balance="1"
                          writeType="0" dbType="mysql" dbDriver="native" switchType="1"  slaveThreshold="100">
                <heartbeat>select user()heartbeat>
				
				
                <writeHost host="M1" url="192.168.200.225:3306" user="root" password="root">
                		
                        <readHost host = "M2" url = "192.168.200.215:3306" user="root" password = "root"/>
                writeHost>

        dataHost>


mycat:schema>

验证

登录mycat控制台

 mysql -uroot -proot -P 8066 -h 192.168.200.220

读主机和写主机中的数据分别如下:
Mycat实现读写分离_第1张图片

查询id为7的数据,显示的是192.168.200.215主机中的数据,和配置的一致;
Mycat实现读写分离_第2张图片

插入一条id为9的数据;
Mycat实现读写分离_第3张图片
可以看到插入到了写主机中,说明我们的配置是有效的。

参考

Mycat入门配置之读写分离配置
MyCat官网

你可能感兴趣的:(数据库,mysql,java,java-ee,学习)