一、server.xml文件
用途
1、配置系统相关参数
2、配置用户访问权限
3、配置SQL防火墙及SQL拦截功能
4、dml表示:insert,update,select,delete,0不可以,1可以
mycat密码加密
java -cp Mycat-server-1.6.5-release.jar io.mycat.util.DecryptUtil 0:root:123456
二、log4j2.xml
文件用途
1、配置输出日志的格式
2、配置输出日志的级别
日志级别
All < Trace < Debug < Info < Warn <Error <Fatal <OFF
7-0
三、rule.xml
需要水平分表的时候才需要配置
文件用途
1、配置水平分片的分片规则
2、配置分片规则所对应的分片函数
Name属性指定分片表规则的名字,必须唯一
<algorithm>指定表的分片算法,取<function>的name属性
分片算法
1、简单取模:RartitionByMod
2、哈希取模:RartitionByHashMod
3、分片枚举:RartitionByFileMap
4、字符串范围取模分片:RartitionByPrefixPattern
四、schema.xml
文件用途
1、配置逻辑库逻辑表
2、配置逻辑表所存储的数据节点
3、配置数据节点所对应的物理数据库服务器信息
配置文件
<schema>
name:逻辑库名称
sqlMaxLimit:限制返回结果集的行数,-1表示关闭
checkSQLschema:判断是否检查发给MyCAT的SQL是否含库名
<table>
name 属性定义逻辑表的名词,必须是和物理表的名称一致
primaryKey 逻辑表的主键
dataNode 物理数据节点,逗号分隔
rule定义了逻辑表分片规则,对应rule.xml中的tableRule
<dataNode>定义逻辑表存储的物理数据库
name属性定义数据节点的名称,必须唯一
dataHost属性定义分片所在的物理主机
database属性定义物理数据库名称
<dataHost>定义后端数据库主机信息
name属性定义主机的名称
maxCon定义最大连接数
minCon定义最小连接数
balance定义读写分离,读的负载均衡的方式
0:不开启读写分离机制
1:全部的readHost与stand by writeHost参与select语句的负载均衡
2:所有的readHost与writeHost都参与select语句的负载均衡
3:所有的readHost参与select语句的负载均衡
writeType定义写操作的类型
0:全部写都是在第一个writeHost对应的主机上,除非这个主机宕机了,则会写在第二个上(推荐)
1:随机的发送到writeHost上执行
switchType写数据时如何高可用切换
-1:关闭自动切换的功能(如果使用MHA时,需要设置为-1)
1:当writeHost不可访问时,会切换到另一个
<heartbeat>定义心跳检测的语句
表示如何检测后端数据库是否可用,语句需要足够的简单
定义一组主从数据库,<readHost>依赖于<writeHost>
<writeHost>
主要定义主从服务器的master服务器
<readHost>
主要定义主从服务器的salve服务器,在writeHost内
user和password为后端数据库中的账号密码
暂时不支持加密密码