zl程序教程

您现在的位置是:首页 >  其他

当前栏目

23MyCat - 全局序列号(本地文件方式)

文件 方式 本地 全局 序列号
2023-09-11 14:15:41 时间

在实现分库分表的情况下,数据库自增主键已无法保证自增主键的全局唯一。为此,MyCat 提供了全局sequence,并且提供了包含本地配置和数据库配置等多种实现方式。

本地文件方式

原理:此方式MyCAT将sequence配置到文件中,当使用到sequence中的配置后,MyCAT会更下classpath中的sequence_conf.properties文件中sequence当前的值。

配置方式

在sequence_conf.properties文件中做如下配置:
GLOBAL_SEQ.HISIDS=
GLOBAL_SEQ.MINID=1001
GLOBAL_SEQ.MAXID=1000000000
GLOBAL_SEQ.CURID=1000

其中HISIDS表示使用过的历史分段(一般无特殊需要可不配置),MINID表示最小ID值,MAXID表示最大ID值,CURID表示当前ID值。

server.xml中配置:

0

注:sequnceHandlerType需要配置为0,表示使用本地文件方式。

使用示例

insert into table1(id,name) values(next value for MYCATSEQ_GLOBAL,‘test’);

缺点:当MyCAT重新发布后,配置文件中的sequence会恢复到初始值。

优点:本地加载,读取速度较快。