最后
由于篇幅原因,就不多做展示了
GLOBAL.MINID=10001
HOTNEWS.MAXID=2000
CUSTOMER.MINID=1001
GLOBAL.HISIDS=
HOTNEWS.HISIDS=
ORDER.HISIDS=
ORDER.CURID=1000
主要的是GLOBAL.MAXID=20000
GLOBAL.CURID=10002
GLOBAL.MINID=10001
可以自行设置
4.测试实现
插入语句中主键字段用next value for MYCATSEQ_GLOBAL
替代
insert into t_user(id,name,age)values(next value for MYCATSEQ_GLOBAL,‘波波烤鸭5’,23)
&esmp; 使用时间戳的方式,我们不需要分配策略或者选择其他的分片策略。
1.修改server.xml文件
将server.xml文件中的sequnceHandlerType
修改为2
2.重启mycat
修改了配置文件,要让其生效需重启服务。
3.插入数据测试
insert into t_user(id,name,age)values(next value for MYCATSEQ_GLOBAL,‘波波烤鸭5’,23)
时间戳太长将id
修改为 varchar
类型。
生成成功~
1.创建序列表和相关函数
第三种方式是在Mycat所管理的某个数据库中创建一张自增的表结构来维护相关的数据,相关的脚本官方提供的有,如下:
DROP TABLE IF EXISTS MYCAT_SEQUENCE;
CREATE TABLE MYCAT_SEQUENCE (
NAME VARCHAR (50) NOT NULL,
current_value INT NOT NULL,
increment INT NOT NULL DEFAULT 100,
PRIMARY KEY (NAME)
) ENGINE = INNODB ;
INSERT INTO MYCAT_SEQUENCE(NAME,current_value,increment) VALUES (‘GLOBAL’, 100000, 100);
DROP FUNCTION IF EXISTS mycat_seq_currval
;
DELIMITER ;;
CREATE FUNCTION mycat_seq_currval
(seq_name VARCHAR(50))
RETURNS VARCHAR(64) CHARSET utf8
DETERMINISTIC
BEGIN DECLARE retval VARCHAR(64);
SET retval=“-999999999,null”;
SELECT CONCAT(CAST(current_value AS CHAR),“,”,CAST(increment AS CHAR) ) INTO retval
FROM MYCAT_SEQUENCE WHERE NAME = seq_name;
RETURN retval ;
END
;;
DELIMITER ;
DROP FUNCTION IF EXISTS mycat_seq_nextval
;
DELIMITER ;;
CREATE FUNCTION mycat_seq_nextval
(seq_name VARCHAR(50)) RETURNS VARCHAR(64)
CHARSET utf8
DETERMINISTIC
BEGIN UPDATE MYCAT_SEQUENCE
SET current_value = current_value + increment
WHERE NAME = seq_name;
RETURN mycat_seq_currval(seq_name);
END
;;
DELIMITER ;
DROP FUNCTION IF EXISTS mycat_seq_setval
;
DELIMITER ;;
CREATE FUNCTION mycat_seq_setval
(seq_name VARCHAR(50), VALUE INTEGER)
RETURNS VARCHAR(64) CHARSET utf8
DETERMINISTIC
BEGIN UPDATE MYCAT_SEQUENCE
SET current_value = VALUE
WHERE NAME = seq_name;
RETURN mycat_seq_currval(seq_name);
END
;;
DELIMITER ;
最后
还有Java核心知识点+全套架构师学习资料和视频+一线大厂面试宝典+面试简历模板可以领取+阿里美团网易腾讯小米爱奇艺快手哔哩哔哩面试题+Spring源码合集+Java架构实战电子书+2021年最新大厂面试题。
爱奇艺快手哔哩哔哩面试题+Spring源码合集+Java架构实战电子书+2021年最新大厂面试题。
[外链图片转存中…(img-TQCtUdF7-1714924192437)]