当前位置: 首页 > article >正文

Mycat关键配置记录

一、schema.xml文件配置

1、<schema>标签

name属性

mycat逻辑库的数据库名称

checkSQLschema属性

校验SQL是否带了schema。默认为false;

当设置为true时,会自动去除SQL语句中的用户名。

eg:

select * from examdb.table1;

执行时会自动去除examdb用户名

--> select * from table1;

 sqlMaxLimit属性

 设置此属性后,若sql未携带limit,则mycat会自动添加limit对应的值

2、<table>标签

name属性

mycat逻辑表名称

dataNode属性

当前逻辑表所属的dataNode名称,可填写多个dataNode(逗号分隔),若填写的dataNode个数过多,可用简写的方式描述。此项可用于分库操作

eg:

<table name="TABLE1" dataNode="testdn$0-99,testdn2$100-199"></table>

rule属性

指定当前逻辑表要使用的规则名称,名称取值于rule.xml配置文件中tableRule标签的name属性。

ruleRequired属性

设置当前逻辑表是否必须指定分片规则,若设置为true,则rule属性必填。

primaryKey属性

 当前逻辑表对应真实表的主键。

特别说明:

若当前逻辑表绑定了非主键分片的规则时,那么使用主键进行查询时,mycat会发送SQL语句至所有配置的dataNode上。如果使用primaryKey属性配置真实表的主键,那么mycat会缓存主键与具体dataNode的信息,再次使用主键进行查询时就不会广播式查询,mycat会发送SQL语句至具体的dataNode上

type属性

当前逻辑表的类型。默认为 普通表;设置仅可填global(全局表)。

autoIncrement属性

当前逻辑表主键自增长开关。默认为 false(禁用);设置为true时,mycat会取当前逻辑表对应的全局序列(存在分片的情况,故取全局序列)进行自增并给值。

 subTables属性

设置当前逻辑表的分表规则,目前分表功能仅mycat1.6版本后支持,且dataNode在分表条件下时只能配置一个,分表条件下不支持各种条件的join语句。

eg:

<table name="TABLE1" subTables="TABLE$1-3,TABLE4"></table>

needAddLimit属性

指定当前逻辑表是否需要自动在每个SQL语句后添加limit限制。默认为true,可设置为false将其关闭。

3、childTable标签 (此标签用于定义E-R分片的子表)

name属性

子逻辑表的名称

joinKey属性

插入子表的时候回使用这个列的值查找父表存储的数据节点

parentKey属性

父逻辑表关联的列名。程序首先获取joinkey的值,再通过parentKey属性指定的列名产生查询语句,通过执行该语句得到父表存储在哪个分片上。从而确定子表存储的位置。

primaryKey属性

 当前逻辑表对应真实表的主键。

needAddLimit属性 

指定当前逻辑表是否需要自动在每个SQL语句后添加limit限制。默认为true,可设置为false将其关闭。

4、dataNode标签 

        dataNode标签定义了mycat的数据分片,一个dataNode就是一个独立的数据分片

name属性

数据节点的名称

 dataHost属性

指定当前分片属于哪个数据库实例

 dataBase属性

指定当前分片属于数据库实例的哪个具体库

5、dataHost标签

        dataHost标签定义了具体的数据库实例、读写分离配置和心跳语句 

name属性

 

 


http://www.kler.cn/a/159239.html

相关文章:

  • mysql数据迁移PolarDB
  • 【AI图像生成网站Golang】雪花算法
  • w~视觉~合集23
  • 从电动汽车到车载充电器:LM317LBDR2G 线性稳压器在汽车中的多场景应用
  • Hadoop 学习心得
  • postgresql.conf与postgresql.auto.conf区别
  • WSL2+tensorflow-gpu 2.3.0 C++ 源码编译(Linux)
  • 图数据库知识点9 | 大数据框架与图数据架构异同
  • 集成开发环境PyCharm的使用【侯小啾python基础领航计划 系列(三)】
  • pyqt5使用pyqtgraph实现动态热力图
  • thinkphp 5.1 对数据库查出来的字段进行预处理
  • Chapter 6 Managing Application Engine Programs 管理应用程序引擎程序
  • CSS面经(未完待续)
  • 十六进制的奥秘:理解计算机中的十六进制数
  • Data Linked UI
  • php+redis抢购商品高并发实现
  • VSCode 创建工作区,多文件夹终端切换
  • Java面试题(每天10题)-------连载(44)
  • 什么都不缺的我还需要一张结婚证吗?
  • AP01B2YP、AP2B2YP、AP04G2YP插装式比例控制阀放大器
  • VS2019shi用动态链接库
  • Linux服务器部署XXL-JOB
  • SQL Sever 基础知识 - 数据筛选(1)
  • 数学建模-基于机器学习的家政行业整体素质提升因素分析
  • Unity - yield return相关用法
  • WTR096A-16S语音芯片IC:丰富的IO口实现个性化定制功能需求