关闭防火墙
systemctl stop firewalld
systemctl disable firewalld
先安装JDK(因为Mycat依赖JDK)
yum install java-1.8.0-openjdk* -y
java -version
cd /usr/lib/jvm
ll #查看jdk1.8.*_***.x86_64 文件名
配置环境变量
vi /etc/profile
在文件最后添加:
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-**.x86_64 #这里填入上方ll 中显示的jdk文件名
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
保存退出。
刷新环境变量
source /etc/profile
安装Mycat
- 上传mycat安装包到 /usr/local下
- 解压:
cd /usr/local
tar -zxvf Mycat-server-1.6.7.5-release-20200422133810-linux.tar.gz -C /usr/local
- 为Mycat配置环境变量
vi /etc/profile
在文件最后添加:
export MYCAT_HOME=/usr/local/mycat
export PATH=$MYCAT_HOME/bin:$PATH:$JAVA_HOME/bin
保存退出。
刷新环境变量
source /etc/profile
进行测试前的配置
cd /usr/local/mycat/
mkdir logs
vi /usr/local/mycat/conf/server.xml
将文件清空,添加以下代码:
<?xml version="1.0" encoding="UTF-8"?>
<!-- - - Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License. - You
may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0
- - Unless required by applicable law or agreed to in writing, software -
distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT
WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the
License for the specific language governing permissions and - limitations
under the License. -->
<!DOCTYPE mycat:server SYSTEM "server.dtd">
<mycat:server xmlns:mycat="http://io.mycat/">
<user name="root" defaultAccount="true">
<property name="password">123456</property>
<property name="schemas">TESTDB</property>
<property name="defaultSchema">TESTDB</property>
</user>
</mycat:server>
保存退出。
vi /usr/local/mycat/conf/schema.xml
将文件清空,添加以下代码。 注意:代码中的IP地址改为自己的MySQL Master和MySQL Slave的地址。
<?xml version="1.0"?>
<!DOCTYPE mycat:schema SYSTEM "schema.dtd">
<mycat:schema xmlns:mycat="http://io.mycat/">
<schema name="TESTDB" checkSQLschema="false" sqlMaxLimit="100" dataNode="dn1">
</schema>
<dataNode name="dn1" dataHost="host1" database="torry" />
<dataHost name="host1" maxCon="1000" minCon="10" balance="0"
writeType="0" dbType="mysql" dbDriver="native" switchType="1" slaveThreshold="100">
<heartbeat>select user()</heartbeat>
<writeHost host="hostM1" url="192.168.164.147:3306" user="root" password="123456"> </writeHost>
<writeHost host="hostM2" url="192.168.164.148:3306" user="root" password="123456"> </writeHost>
</dataHost>
</mycat:schema>
保存退出。
vi /usr/local/mycat/conf/wrapper.conf
在文件最后添加以下代码。
wrapper.ping.timeout=0 # 如果文件中有该项, 直接修改即可。
wrapper.startup.timeout=300
启动Mycat
控制台启动:/usr/local/mycat/bin/mycat console
后台启动:/usr/local/mycat/bin/mycat start
mysql -uroot -p123456 -P8066 可以连接证明安装成功