想在本地测试使用mycat实现读写分离。我使用docker容器搭建了两个mysql服务。并且本地可以正常的访问到这两个数据库
但是我修改mycat的schema.xml文件时,再次启动mycat服务始终启动不了
<?xml version="1.0"?>
<!DOCTYPE mycat:schema SYSTEM "schema.dtd">
<mycat:schema xmlns:mycat="http://io.mycat/">
<schema name="CPMS" checkSQLschema="true" sqlMaxLimit="100" randomDataNode="dn1">
<table name="cpms_user" dataNode="dn1" rule="auto-sharding-long" splitTableNames ="true"/>
</schema>
<dataNode name="dn1" dataHost="host1" database="cpms" />
<dataHost name="host1" maxCon="1000" minCon="10" balance="3"
writeType="0" dbType="mysql" dbDriver="native" switchType="1" slaveThreshold="100">
<heartbeat>select user()</heartbeat>
<writeHost host="hostM1" url="193.168.72.158:3310" user="root"
password="123456">
<readHost host="hostS1" url="193.168.72.158:3312" user="root"
password="123456">
</readHost >
</writeHost>
</dataHost>
</mycat:schema>
说明:
(1). 193.168.72.158为本地虚拟机的IP
(2). 193.168.72.158:3310 和 193.168.72.158:3312 是通过docker搭建的两个mysql服务。在window通过mysql连接工具可以正常连接。
说明应该不是这两个mysql服务的原因。
(3) mycat也是安装在同一台虚拟机中的
使用mycat官网默认的配置文件,可以正常启动,但是我把它改成上面的配置就不行了。
启动不了,把报错信息贴上来。
你的mysql两个服务,配置主从了没?