mycat 下载地址
https://github.com/MyCATApache/Mycat-download/tree/master/1.6-RELEASE
Mycat-server-1.6.7.5-release-20200422133810-linux.tar.gz
1.解压出来 tar 命令
tar -xzvf Mycat-server-1.6.7.5-release-20200422133810-linux.tar.gz
2.移动到/usr/local/mycat里面去
3.启动需要在mycat里面创建一个logs文件用来存储日志,mkdir logs;
4.修改配置文件 server.xml
<user name="mycat" defaultAccount="true">
<property name="password">123456</property>
<property name="schemas">xiuhu_mycat</property>
</user>
<!--user 中的name表示 用户名 password 表示密码 schemas 相当于mysql数据库 具备访问什么数据库权限-->
5.修改配置文件 schema.xml
<!DOCTYPE mycat:schema SYSTEM "schema.dtd">
<mycat:schema xmlns:mycat="http://io.mycat/">
<schema name="xiuhu_mycat" dataNode="dn1" checkSQLschema="true" sqlMaxLimit="100" randomDataNode="dn1">
</schema>
<!-- schema name 表示数据库 dataNode 表示对应业务数据库 -->
<!-- dataNode name 别名 database 对应mysql实际数据库 dataHost 数据库详细影戏-->
<dataNode name="dn1" dataHost="host1" database="xiuhu_test" />
<dataHost name="host1" maxCon="1000" minCon="10" balance="3"
writeType="0" dbType="mysql" dbDriver="jdbc" switchType="1" slaveThreshold="100">
<!--dataHost name= dataNode = dataHost balance=3表示读写分离(单主单从) 1表示双主双从 -
heartbeat标签表示心跳检查 writeHost 写入的数据库 readHost表示读的数据库->
<heartbeat>select user()</heartbeat>
<!-- can have multi write hosts -->
<writeHost host="hostM1" url="jdbc:mysql://192.168.1.173:3306?useUnicode=true&characterEncoding=utf8&useSSL=false&allowMultiQueries=true" user=""
password="">
<readHost host="hostS1" url="jdbc:mysql://192.168.1.174:3306?useUnicode=true&characterEncoding=utf8&useSSL=false&allowMultiQueries=true" user="" password=""></readHost>
</writeHost>
</dataHost>
</mycat:schema>
6 注意 mycat 1.6版本连接mysql用的版本为5.1 如果连接mysql8.0会报错 需要跟换为8.0以上直接在lib将原有mysql-connector-java-5.1.35.jar 替换mysql-connector-java-8.0.17.jar*即可
7当代码访问mycat时需要注意mysql-connector-java-8.0.17 无法链接mycat 需要降低版本到5.1左右访问 或者修改底层代码