MYCAT链接及集群搭建
1 准备(windows版操作)
JDK1.7以上
TOMCAT(8.5)
MYCAT(windows) server 1.6.7
mycat下载连接:The domain name Mycat.io is for sale (免安装)
配置mycat环境变量: MYCAT_HOME=安装路径
PATH = $MYCAT_HOME$\bin
2 修改mycat配置信息
2.1安装路径\conf 下 server.xml
配置mycat用户名及密码,以及mycat逻辑库名,权限(可忽略)等
<user name="root" defaultAccount="true">
<!--mycat 连接密码-->
<property name="password">123456</property>
<!--mycat 逻辑库名 与配置文件相同-->
<property name="schemas">DB2</property>
<!--读取权限-->
<!--<property name="readOnly">false</property>-->
</user>
2.2 安装路径\conf 下 schema.xml
配置mycat与实际数据库的绑定
<mycat:schema xmlns:mycat="http://io.mycat/">
<schema name="DB2" checkSQLschema="false" dataNode='dn1' sqlMaxLimit="100"></schema>
<dataNode name="dn1" dataHost="localhost1" database="数据库名称" />
<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="127.0.0.1:3306" user="root"
password="***">
<!-- can have multi read hosts -->
<!--<readHost host="hostS2" url="127.0.0.1:3306" user="root" password="***" />-->
</writeHost>
<!--默认第一个writeHost,出现问题切换正常的下一个writeHost -->
<writeHost host="hostM2" url="127.0.0.2:3306" user="root"
password="***"></writeHost>
</dataHost>
</mycat:schema>
2.3设置防火墙拦截,使其允许mycat请求
2.4 启动失败修改启动插件的内存分配
打开mycat\conf里面的startup_nowrap.bat 为了降低资源占用,mycat的jvm设置在startup_nowrap.bat 可以清楚看到如下配置:
“%JAVA_CMD%” -server -Xms1G -Xmx2G -XX:MaxPermSize=64M -XX:+AggressiveOpts -XX:MaxDirectMemorySize=1G -DMYCAT_HOME=%MYCAT_HOME% -cp “..\conf;..\lib*” io.mycat.MycatStartup
这里将-Xms1G改成-Xms512M,-Xmx2G改成-Xmx1024M,保存后重新启动即可。
3修改mysql配置文件
3.1安装路径 下 my.ini 或者 my.cnf
server_id=1
log-bin=mysql-bin
relay_log=mysql-relay-bin
注:server_id 不可重复
4 设置mysql主服务设置(master)
4.1登录mysql服务,创建用户(用于从服务与主服务的链接)
GRANT REPLICATION SLAVE,RELOAD,SUPER ON *.* TO 用户@'允许端口' IDENTIFIED BY '密码';
例:GRANT REPLICATION SLAVE,RELOAD,SUPER ON *.* TO backup@'192.168.31.177' IDENTIFIED BY '123456';
用户生效指令:flush privileges;
4.2 重启mysql;
查看主服务状态指令:show master status;(存在即创建成功)
查看链接列表指令:show processlist\G;(可查询当前主服务下的链接信息)
备注:1关于mycat主从切换链接:mysql主从复制+主备切换_蹦擦擦擦的博客-CSDN博客_mysql主从复制+主备切换
2 关于mycat负载均衡链接:windows环境安装haproxy及初步配置负载均衡使用示例 - songpingyi - 博客园
3 Haproxy下载链接:Index of /repo/pkgs/haproxy
4 haproxy集成mycat负载均衡链接:https://blog.51cto.com/goome/2056522