MyCat安装步骤说明

一、MyCat的安装

1、首先需配置java运行环境(略)

2、下载mycat安装包,或者直接进行下载,网址http://dl.mycat.io/

         wget http://dl.mycat.io/1.6.5/Mycat-server-1.6.5-release-20180122220033-linux.tar.gz

3、解压至home/soft/mycat/文件夹下

         tar -zxvf Mycat-server-1.6.5-release-20180122220033-linux.tar.gz

4、配置环境变量

         vim /etc/profile

         并添加

export MYCAT_HOME=/home/soft/mycat/mycat

export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin:$MYCAT_HOME/bin:$PATH

按Esc,输入:wq保存退出

刷新环境变量—执行:source /etc/profile

 

5、启动MyCat

         MyCat相关操作命令:

         mycat start/stop/restart

 

二、MyCat配置相关

1、MyCat根目录结构

2、MyCat的主要配置文件

schema.xml中定义逻辑库,表、分片节点等内容;

rule.xml中定义分片规则;

server.xml中定义用户以及系统相关变量,如端口等

 

3、server.xml内容概述

server.xml是MyCAT对外的“虚拟数据库”配置文件。所谓的“虚拟数据库”是说,MyCAT将多个Mysql集群整合起来对外提供服务,提供服务的接口仍然采用Mysql的形式,因此,通过仿造Mysql接口,让调用程序以为自己是在访问Mysql数据库,就是所谓的“虚拟数据库”。

 

表明该虚拟数据库有一个schema,TESTDB;

有2个用户test和user,密码分别是test和user,

user用户是只读的,test用户未设置只读;

默认的SQL解析器是druidparser

 

 

 

4、schema.xml内容概述

 

Schema中主要配置 Mycat 数据库,MySQL表,分片规则,分片类型

第1块是schema块,主要描述了虚拟数据库的schema TESTDB中有哪些表,每个表分布在哪些数据节点上,分布的方法采用哪种算法。

例如<table name="travelrecord"

dataNode="dn1,dn2,dn3"rule="auto-sharding-long"/>,表示travelrecord表分布在dn1,dn2,dn3这3个节点上,分布的方法采用auto-sharding-long算法。

 

 

 

第2块是dataNode,表示该数据库有哪些数据节点,以及这些数据节点实际对应的数据服务器和数据库名,这里配置了3个节点dn1,dn2,dn3,都是在localhost1服务器上,数据库名分别是db1,db2,db3,其实,这也正是前面schema块中用到的。

第3块是dataHost,这部分是实际的数据库服务器配置,这里配置了2个Mysql数据库,hostM1和hostS1,地址分别在“localhost:3306”,用户名都是root,密码是123456,并且指定了心跳是select user()。

需注意:

balance和 switchType两个参数:

balance指的负载均衡类型,目前的取值有4种:

balance="0", 不开启读写分离机制,所有读操作都发送到当前可用的writeHost上。

balance="1",全部的readHost与stand by writeHost参与select语句的负载均衡,

简单的说,当双主双从模式(M1->S1,M2->S2,并且M1与 M2互为主备),正常情况下,M2,S1,S2都参与select语句的负载均衡。

balance="2",所有读操作都随机的在writeHost、readhost上分发。

balance="3",所有读请求随机的分发到wiriterHost对应的readhost执行,writerHost不负担读压力

 

switchType指的是切换的模式,目前的取值也有4种:

switchType='-1' 表示不自动切换

switchType='1' 默认值,表示自动切换

switchType='2' 基于MySQL主从同步的状态决定是否切换,心跳语句为 show slave status

switchType='3'基于MySQL galary cluster的切换机制(适合集群)(1.4.1),心跳语句为 show status like 'wsrep%'。

 

 

5、rule.xml内容概述

 

sharding-by-hour 对应的切分方式(function )是按日期切分。

tableRule中name 为schema.xml 中table 标签中对应的rule。

columns 是表的切分字段: createTime 创建日期。

algorithm 是规则对应的切分规则:映射到function 的name

 

 

function 配置是分片规则的配置。

name 为切分规则的名称,但是需要与tableRule 中匹配。

class 是切分规则对应的切分类,需要哪种规则则配置哪种,

例如本例子是按小时分片:org.opencloudb.route.function.LatestMonthPartion

property 标签是切分规则对应的不同属性,不同的切分规则配置不同。

 

三、安装中遇到的问题

1、MyCat 默认数据端口是8066

登陆如下:mysql -h127.0.0.1 -utest -ptest –P8066 [-dmycat]

 

2、在配置好数据库后连接远程通过Navicat for MySQL连接MyCat提示:

1184-Unknown charsetIndex255

 处理方式:

 找到配置文件夹下:index_to_charset.properties 文件,在文件末尾加上“255=utf8mb4”即可。

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值