1、下载mycat
为了方便,我已经下载下来。我选择的版本是1.6版本
2、解压,安装在/home/xm6f/dev目录下
cd /home/xm6f/devtar -zxvf Mycat-server-1.6-RELEASE-20161028204710-linux.tar.gz
为了以后更好看目录结构,下tree(可选)
yum -y install tree
tree /home/xm6f/dev/mycat #查看mycat目录结构
3、创建用户并修改配置文件
a、为了更好的进入mycat,设置MYCAT_HOME的变量:vim /etc/profile
修改增加下列内容:
export JAVA_HOME=/home/xm6f/dev/jdk1.7.0_80
export JRE_HOME=/home/xm6f/dev/jdk1.7.0_80/jre
export MYCAT_HOME=/home/xm6f/dev/mycat
export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin:$MYCAT_HOME/bin
使得变量生效:source /etc/profile
###服务器名和IP绑定
vim /etc/hosts 192.168.1.105 mycat-server127.0.0.1 mycat-server
###设置 wrapper.java.command 的java 路径
( 同时可设置 -Xmx 和 -Xms ,参考: mycat 启动失败 The specified size exceeds the maximum
representable size)
vim /home/xm6f/dev/mycat/conf/wrapper.conf
wrapper.java.command=%JAVA_HOME%/bin/java
b、修改server.xml
cd /home/xm6f/dev/mycat
vim conf/server.xml
开启实时统计,便于后期安装mycat-eye的监测<!-- 1为开启实时统计、0为关闭 --><property name="useSqlStat">1</property>
这四项都去掉注释,使得生效<!--默认是65535 64K 用于sql解析时最大文本长度 --><property name="maxStringLiteralLength">65535</property><property name="sequnceHandlerType">0</property><property name="backSocketNoDelay">1</property><property name="frontSocketNoDelay">1</property>
最主要的看下面的配置,这是连接mycat的时候的用户名和密码
<user name="root">
<property name="password">123456</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>
<user name="user">
<property name="password">user</property>
<property name="schemas">TESTDB</property>
<property name="readOnly">true</property>
</user>
mycat的用户名和密码:root/123456、user/user
c、修改schema.xml
cd /home/xm6f/dev/mycat
vim conf/schema.xml
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE mycat:schema SYSTEM "schema.dtd"><mycat:schema xmlns:mycat="http://io.mycat/">
<schema name="TESTDB" checkSQLschema="false" sqlMaxLimit="100" dataNode="dn1" />
<dataNode name="dn1" dataHost="localhost1" database="mldn" />
<dataHost name="localhost1" 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.1.33:3306" user="root" password="attack">
</writeHost>
</dataHost></mycat:schema>
d、修改log4j的配置
为了让信息启动时更好定位,需要将conf/log4j2.xml的文件修改为debug级别。
四、启动mycat服务
# mycat { console | start | stop | restart | status | dump }
总结
关于MyCAT的配置其实是蛮简单的,最主要的是熟悉各配置文件的规则。以上用户名,密码,如何分库,都是在配置文件中定义的。
关于配置文件,conf目录下主要以下三个需要熟悉。
server.xml是Mycat服务器参数调整和用户授权的配置文件
schema.xml是逻辑库定义和表以及分片定义的配置文件
rule.xml是分片规则的配置文件
WrapperSimpleApp: Encountered an error running main: java.lang.OutOfMemoryError: Direct buffer memory
修改wrapper.conf的配置文件:
wrapper.java.additional.3=-XX:MaxPermSize=1024M
wrapper.java.additional.5=-XX:MaxDirectMemorySize=4G
# Initial Java Heap Size (in MB)
wrapper.java.initmemory=512
# Maximum Java Heap Size (in MB)
wrapper.java.maxmemory=512
来源:https://www.cnblogs.com/chinaifae/p/9993321.html