- 前提是实现Mysql的主从复制 :https://blog.csdn.net/qq_38253703/article/details/89765919
- 如果没安装Mycat的,可以参考: https://blog.csdn.net/qq_38253703/article/details/89787284
- 配置Mycat的server.xml,路径:
/usr/local/mycat/conf/server.xml
,找到user标签,设置好user,也可使用默认配置,并记录好user相关信息 - 配置Mycat的schema.xml,路径:
/usr/local/mycat/conf/schema.xml
<?xml version="1.0"?>
<!DOCTYPE mycat:schema SYSTEM "schema.dtd">
<mycat:schema xmlns:mycat="http://io.mycat/" >
<!-- schema 中可以有多个table节点,列几个在Navicat中就能看到几个,库里有这里没有的话客户端中也看不到 -->
<schema name="TESTDB" checkSQLschema="false" sqlMaxLimit="100" dataNode="dn1">
</schema>
<!-- 数据节点 -->
<dataNode name="dn1" dataHost="sam_server_1" database="qq" />
<!-- 节点主机信息 -->
<dataHost name="sam_server_1" maxCon="1000" minCon="10" balance="1"
writeType="0" dbType="mysql" dbDriver="native" switchType="1" slaveThreshold="100">
<heartbeat>select user()</heartbeat>
<!-- 指定写入数据的主机 -->
<writeHost host="hostM1" url="192.168.1.112:3306" user="root" password="Admin123!">
<!-- 指定读取数据的主机,可以有多个 -->
<readHost host="hostS1" url="192.168.1.114:3306" user="root" password="Admin123!" />
<readHost host="hostS2" url="192.168.1.117:3306" user="root" password="Admin123!" />
</writeHost>
<writeHost host="hostM2" url="192.168.1.114:3306" user="root" password="Admin123!">
<readHost host="hostS1" url="192.168.1.112:3306" user="root" password="Admin123!" />
<readHost host="hostS2" url="192.168.1.118:3306" user="root" password="Admin123!" />
</writeHost>
</dataHost>
</mycat:schema>
- 连接Mycat管理数据库,验证是否实现读写分离
mysql -u root -p123456 -P 9066
mysql-> show @@datasource;
即可查看