Mycat

MyCat的目录结构

bin 目录是 MyCat 的启动目录,conf 目录是 MyCat 的配置文件目录,lib 目录是 MyCat 自身的 Jar 包以及所依赖 Jar 包的目录,logs 目录是日志目录

 

MyCat的配置文件

在这 MyCat 的目录中,最重要的是 conf 目录,这里面存放了 MyCat 所有的配置信息。在 conf 目录中有三个重要的配置文件:schema.xml、server.xml、rule.xml。

schema.xml

schema.xml 文件定义了 MyCat 到底连接哪个数据库实例,连接这个数据库实例的哪个数据库。MyCat 一共有几个逻辑数据库,MyCat 一共有几个逻辑表。

schema.xml 文件一共有四个配置节点:DataHost、DataNode、Schema、Table。

image

DataHost 节点定义了 MyCat 要连接哪个 MySQL 实例,连接的账号密码是多少。默认的 MyCat 为我们定义了一个名为 localhost1 的数据服务器(DataHost),它指向了本地(localhost)3306 端口的 MySQL 服务器,对应 MySQL 服务器的账号是 root,密码是 123456。

<dataHost name="localhost1" maxCon="1000" minCon="10" balance="0" writeType="0" dbType="mysql" dbDriver="native" switchType="1"  slaveThreshold="100">
  <heartbeat>select user()</heartbeat>
  <writeHost host="hostM1" url="localhost:3306" user="root" password="123456">
      <readHost host="hostS2" url="192.168.1.200:3306" user="root" password="xxx" />
  </writeHost>
  <writeHost host="hostS1" url="localhost:3316" user="root" password="123456" />
</dataHost>

server.xml

server.xml 定义了项目中连接 MyCat 服务器所需要的账号密码,以及该账号能访问那些逻辑数据库。 server.xml 配置文件中有 System 和 User 两个配置节点。

System 节点定义了连接 MyCat 服务器的系统配置信息。例如是否开启实时统计功能,是否开启全加班一致性检测等。

User 配置节点定义了连接 MyCat 服务器的账号密码,以及该账号密码所能进行的数据库操作。默认的 MyCat 为我们创建了一个账户名为 root,密码为 123456 的账号,只能访问 TESTDB 逻辑数据库,并且定义了对相关表的操作权限。

rule.xml

rule.xml 定义了逻辑表使用哪个字段进行拆分,使用什么拆分算法进行拆分。rule.xml 中有两个配置节点,分别是:TableRule 和 Function 配置节点。

TableRule 配置节点定义了逻辑表的拆分信息,例如使用哪个字段进行拆分,使用什么拆分算法。默认的 MyCat 为我们配置了一个名为 rule2 的表拆分规则,表示根据 user_id 字段进行拆分,拆分算法是 func1。

Function 配置节点则定义了具体的拆分算法。例如使用对 1000 取余的拆分算法,对 100 取余的拆分算分等等。默认的 MyCat 为我们定义了一个名为 func1 的拆分算法,这个拆分算法定义在 o.mycat.route.function.PartitionByLong 类中,并且还传入了两个参数值。

posted @ 2021-06-09 11:47  FY丶  阅读(54)  评论(0)    收藏  举报