Mycat可以直接下载解压,简单配置后可以使用,主要配置项如下:

1. log4j2.xml:配置MyCat日志,包括位置,格式,单个文件大小

2. rule.xml: 配置分片规则

3. schema.xml:配置分库详细信息

4. server.xml:配置登陆信息

5.wrapper.conf : 配置jvm已经缓存大小

PS:有些版本的安装包(比如1.6)存在一些问题,比如在配置server.xml的时候,配置多个登陆账户,会报错:

The content of element type "user" must match "(property)+"

一般就是server.dtd配置错误,修改一下server.dtd:

<!ELEMENT user (property+,privileges*)>
<!ATTLIST user name NMTOKEN #REQUIRED>

还有一些错误,是1.6版本中druid.jar包中缺失DruidUpdateParser,用阿里巴巴的druid-release替换一下就好

-----------------------------------------------------------------------分割线------------------------------------------------------------------------------------------

-----------------------------------------------------------------------分割线------------------------------------------------------------------------------------------

现在使用mycat数据库性全局ID,基本思想是:
在某个数据节点上保存一个表:mycat_sequence,基本形式如下,current_value 为当前值,increment为步长,mycat维护这张表
+--------+---------------+-----------+
| NAME | current_value | increment |
+--------+---------------+-----------+
| GLOBAL | 300 | 100 |
+--------+---------------+-----------+
使用是,调用语句"next value for MYCATSEQ_GLOBAL",可以获取一个全局ID,有如下特征:
1. 每次获得的ID是上一个ID+1,
2. 批量插入时(一句SQL),获得的ID相同;
3. 支持加减
4. 到达整个步长时,mycat会去访问数据库mycat_sequence,平时自增mycat自己维护

对于批量插入与父子表的情景,这种方法存在以下问题:
1. 批量调用时,ID相同,不可取
2. 每次自增为1,对于批量取ID的情景,需要频繁调用
3. 对于父子表的调用,若分开调用则ID不同,若同时调用,需要事务保证一致性,增加操作复杂度

对于批量分配全局ID,建议自己维持一个数据表t_GLOBAL_ID,形式如下:
+--------+---------------+
| i_class| current_ID |
+--------+---------------+
| 1 | 300 |
+--------+---------------+
当有n个数据需要处理时,先更新数据库:
update GLOBAL_ID set current_ID= current_ID+n where i_class=1;
然后对n个数据分配ID,分配完后可以当普通数据处理。
当使用INNODB时,更改GLOBAL_ID会锁行,从而保证唯一性。

MyCat配置简述以及mycat全局ID的更多相关文章

  1. Mycat配置分库分表(垂直分库、水平分表)、全局序列

    1. Mycat相关文章   Linux安装Mycat1.6.7.4并实现Mysql数据库读写分离简单配置   Linux安装Mysql8.0.20并配置主从复制(一主一从,双主双从)   Docke ...

  2. Mycat 配置

    前言 Mycat 是一个数据库分库分表中间件 MyCAT 是作为通用代理设计的,后端是以 Mysql协议 和 JDBC 的方式连接数据库,可以支持 Oracle.DB2.SQL Server . mo ...

  3. MyCat配置运行

    昨天把mycat的环境搭建差不多了,今天直接上配置文件: 主要需要修改三个配置文件: rule.xml schema.xml server.xml rule.xml配置如图: <?xml ver ...

  4. Mycat配置文件详解及全局序列号

    来详细的看看 mycat的配置文件,更多信息请查看:mycat权威指南. schema.xml: Schema.xml 作为 MyCat 中重要的配置文件之一,管理着 MyCat 的逻辑库.表.分片规 ...

  5. MyCat配置详解

    MyCAT 配置解析 server.xml Mycat的配置文件,设置账号.参数等schema.xml Mycat对应的物理数据库和数据库表的配置rule.xml Mycat分片(分库分表)规则 一 ...

  6. Mysql系列五:数据库分库分表中间件mycat的安装和mycat配置详解

    一.mycat的安装 环境准备:准备一台虚拟机192.168.152.128 1. 下载mycat cd /softwarewget http:-linux.tar.gz 2. 解压mycat tar ...

  7. mycat配置实现mysql读写分离

    需要先把mysql的主从复制配置好,然后才可以开始mycat的配置 m ysql主从复制配置:https://www.cnblogs.com/renjianjun/p/9093062.html myc ...

  8. Mycat 配置及优化【转】

    前言 Mycat 是一个数据库分库分表中间件 MyCAT 是作为通用代理设计的,后端是以 Mysql协议 和 JDBC 的方式连接数据库,可以支持 Oracle.DB2.SQL Server . mo ...

  9. Mycat配置入门

    配置: --bin 启动目录 --conf 配置文件存放配置文件: --server.xml:是Mycat服务器参数调整和用户授权的配置文件. --schema.xml:是逻辑库定义和表以及分片定义的 ...

随机推荐

  1. Linux文件目录操作命令

    ls 显示文件和目录列表 -l 列出文件的详细信息 -a 列出当前目录所有文件,包含隐藏文件 mkdir 创建目录 -p 父目录不存在情况下先生成父目录 cd 切换目录 touch 生成一个空文件 e ...

  2. tensorflow分布式运行

    1.知识点 """ 单机多卡:一台服务器上多台设备(GPU) 参数服务器:更新参数,保存参数 工作服务器:主要功能是去计算 更新参数的模式: 1.同步模型更新 2.异步模 ...

  3. Selenium 2自动化测试实战29(组织单元测试用例和discover更多测试用例)

    一.组织单元测试用例 看看unittest单元测试框架是如何扩展和组织新增的测试用例以之前的calculator.py文件为例,为其扩展sub()方法,用来计算两个数相减的结果. #coding:ut ...

  4. Linux 查看操作系统版本信息 uname

    Linux 查看操作系统版本信息 uname uname 命令用于显示当前系统的版本信息. 带 -a 选项的 uname 命令会给出当前操作系统的所有有用信息. 命令如下: [root@node1 / ...

  5. 安装VMTool

    一.       安装VMTool 开启虚拟机,然后在VMware上选虚拟机->安装VMTool 如果提示光驱被占用就先用root登录 在命令行中挂载光盘   #mount /dev/cdrom ...

  6. Smarty快速入门

    1.Smarty是用纯php语言写的类 2.功能是实现前后端分离 3.Smarty简洁高效 4.快速入门案例 1.下载 smarty源码 https://www.smarty.net/ 2.搭建PHP ...

  7. KCP - A Fast and Reliable ARQ Protocol

    KCP - A Fast and Reliable ARQ Protocol README in English 简介 KCP是一个快速可靠协议,能以比 TCP浪费10%-20%的带宽的代价,换取平均 ...

  8. 一加手机2 进入recovery 模式无法挂载USB存储器通过命令窗口上传ROM镜像

    试过3.0.3-0和3.0.3-1的recovery都无法使用“挂载USB大容量存储器”模式,这肯定让很多清掉系统(就是system分区)的小伙伴无力吐槽,因为这样子rom就无法在rec里面从电脑拷到 ...

  9. 【DSP开发】【并行计算-CUDA开发】TI OpenCL v01.01.xx

    TI OpenCL v01.01.xx TI OpenCL™ Runtime Documentation Contents: Introduction OpenCL 1.1 Reference Mat ...

  10. 【VS开发】【DSP开发】地址对齐

    组成原理说明------地址对齐 1.引入 1.1如下面的代码,定义了三个变量,int,char,int,并输出他们的十六进制的内存地址. #include<stdio.h> int ma ...