Mycat主机:192.168.118.100
写主机:192.168.118.100
读主机:192.168.118.101
一、安装jdk(已安装过就不需要)
1、下载jdk
https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html
2、传入linux /root目录中进行解压,并移动到/usr/local
tar -xvf jdk-8u161-linux-x64.tar.gz
mv jdk1.8.0_161/ /usr/local/jdk
3、vim /etc/profile
#在最下面写入
export JAVA_HOME=/usr/local/jdk/
export CLASSPATH=$:CLASSPATH:$JAVA_HOME/lib/
export PATH=$PATH:$JAVA_HOME/bin
4、source /etc/profile
5、java -version #查看版本
二、安装Mycat
1、下载Mycat
http://dl.mycat.org.cn/1.6.7.1/Mycat-server-1.6.7.1-release-20190627191042-linux.tar.gz
或者
wget http://dl.mycat.org.cn/1.6.7.1/Mycat-server-1.6.7.1-release-20190627191042-linux.tar.gz
2、传入linux /root目录下解压,并移动到/usr/local
tar -xvf Mycat-server-1.6.7.1-release-20200209222254-linux.tar.gz
mv mycat /usr/local
3、进入conf中编辑
vim server.xml #设置登录账号
</system>
<!-- 全局SQL防火墙设置 -->
<!--白名单可以使用通配符%或着*-->
<!--例如<host host="127.0.0.*" user="root"/>-->
<!--例如<host host="127.0.*" user="root"/>-->
<!--例如<host host="127.*" user="root"/>-->
<!--例如<host host="1*7.*" user="root"/>-->
<!--这些配置情况下对于127.0.0.1都能以root账户登录-->
<!--
<firewall>
<whitehost>
<host host="1*7.0.0.*" user="root"/>
</whitehost> <blacklist check="false"> </blacklist>
</firewall>
-->
<user name="mycat" defaultAccount="true"> <!--设置账户-->
<property name="password">P@ssw0rd01</property> <!--设置账户密码-->
<property name="schemas">TESTDB</property>
<!-- 表级 DML 权限设置 -->
<!--
<privileges check="false">
<schema name="TESTDB" dml="0110" >
<table name="tb01" dml="0000"></table>
<table name="tb02" dml="1111"></table>
</schema>
</privileges>
-->
</user>
vim schema.xml
<?xml version="1.0"?>
<!DOCTYPE mycat:schema SYSTEM "schema.dtd">
<mycat:schema xmlns:mycat="http://io.mycat/">
<!-- schema name 要与server.xml里的一致<property name="schemas">TESTDB</property> -->
<schema name="TESTDB" checkSQLschema="false" sqlMaxLimit="100">
<!-- auto sharding by id (long) -->
<table name="travelrecord" dataNode="dn1,dn2,dn3" rule="auto-sharding-long" />
</schema>
<!-- <dataNode name="dn1$0-743" dataHost="localhost1" database="db$0-743"
/> -->
<!-- master是主机名 -->
<dataNode name="dn1" dataHost="master" database="db1" />
<dataNode name="dn2" dataHost="master" database="db2" />
<dataNode name="dn3" dataHost="master" database="db3" />
<dataHost name="master" maxCon="1000" minCon="10" balance="0"
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.118.100:3306" user="root"
password="P@ssw0rd01">
<!-- can have multi read hosts -->
<readHost host="hostS1" url="192.168.118.101:3306" user="root" password="P@ssw0rd01" />
</writeHost>
</dataHost>
</mycat:schema>
vim wrapper.conf
wrapper.java.command=/usr/local/jdk/bin/java
4、启动Mycat
cd /usl/local/mycat/bin
./mycat restart
ss -tpln | grep 8066 #查看8066端口是否启动,若没有启动则mycat没有启动成功
5、登录Mycat数据库
mysql -umycat -pP@ssw0rd01 -h 192.168.118.100 -P 8066
出现下面图片里的内容,则mycat数据库登录成功