大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

Mycat教程
Mycat讀寫分離
Mycat分庫分表
Mycat全局序列號

Mycat獲取全局序列號

本地文件方式

● 在servler.xml文件中配置sequnceHandlerType=0;

● 在conf/sequence_conf.properties中維護主鍵信息;

● 如果想要每個表生成的主鍵連續,可以在sequence_conf.properties配置當前表的生成值,一般將Global替換為自己對應的前綴即可(三個地方)。

取值的時候通過next value for MYCATSEQ_XXXX獲取。

時間戳方式

sequnceHandlerType=2

這種方式,需要將主鍵設置為varchar類型,長度一般20;

數據庫方式

這里是數據庫方式生成主鍵ID,不是采用數據庫的主鍵自增,而是mycat利用mysql數據庫生成一個主鍵。

1、在數據庫中創建一張表,三個函數

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 1,
PRIMARY KEY(name)) ENGINE=InnoDB default charset=utf8;

INSERT INTO MYCAT_SEQUENCE(name,current_value,increment) VALUES ("GLOBAL", 0, 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_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 ;

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 ;

2、server.xml配置

<property name="sequnceHandlerType">1</property>

注:sequnceHandlerType 需要配置為1,表示使用數據庫方式生成sequence

3、sequence_db_conf.properties配置

指定sequence相關配置在哪個節點上,例如我們如果在p2p-admin上創建的生成主鍵的表,那么根據我們在schema.xml文件中的配置,對應的節點應該是dn2,所以在sequence_db_conf.properties中配置的GLOBAL應該就是dn2

GLOBAL=dn2

4、插入時怎么用

insert into tb1(id,name) values(next value for MYCATSEQ_GLOBAL,"test");

總結

本課程偏向于資深開發人員、架構師;

一般中小公司不會采用到該技術,因為中小公司的數據量沒有達到一定的級別,在數據量比較大的時候才會采用該技術

可以在簡歷中體現:本人愛好互聯網各類開發技術,樂于技術研究,利用工作之余研究過Mycat分庫分表、xxx源碼、xxx等技術

全部教程
主站蜘蛛池模板: 日日夜夜天天 | 亚洲精品视频一区二区 | 久久久久久不卡 | 亚洲性一区 | 在线免费观看亚洲视频 | 欧美精品成人一区二区视频一 | 国产亚洲99影院 | 亚洲精品不卡午夜精品 | 婷婷激情综合 | 九九色视频 | 亚洲人成依人成综合网 | 久爱午夜精品免费视频 | 69热在线观看 | 国产美女mm131爽爽爽免费 | 99精品国产兔费观看久久99 | 日日日日人人人夜夜夜2017 | 成人免费视频一区二区三区 | 青草五月天| 99国内精品久久久久久久 | 99福利在线 | 加勒比精品久久一区二区三区 | 老司机午夜免费 | 欧美成人老熟妇暴潮毛片 | 日日撸 | 日韩在线观看一区 | 亚洲一区二区三区免费观看 | 男女羞羞视频免费观看 | 国产精品99精品久久免费 | 九九视频在线 | 久久精品国产亚洲香蕉 | 毛茸茸成熟女性老太的女bbww | 欧美成人性做爰网站免费 | 久操视频在线播放 | 巨乳一级片 | 麻豆国产原创最新在线视频 | 日韩亚洲欧美一区二区三区 | 久久久久久久国产精品 | ww亚洲ww在线观看国产 | 国内一区二区 | 激情五月五月婷婷 | 国内在线观看 |