大战熟女丰满人妻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等技術

全部教程
主站蜘蛛池模板: 四虎影视国产在线观看精品 | 97伊人久久| 欧美肥老妇做爰视频 | 欧美一级毛片免费观看 | 精品精品国产高清a毛片牛牛 | 天天干夜夜谢 | 国产日产亚洲精品 | 国产亚洲欧美久久久久 | 一级做a免费视频观看网站 一级做a爰片久久毛片唾 | 国产精品不卡在线 | 日韩一级片在线观看 | 欧美日韩久久 | 久久久久国产一级毛片高清版 | 欧美色图一区二区 | 搡的我好爽视频在线观看 | 草久免费视频 | 好吊妞操| 四虎影院视频 | 国产无套乱子伦精彩是白视频 | 婷婷亚洲综合一区二区 | 俺来也欧美亚洲a∨在线 | 国产成人网 | 99久久精品免费看国产高清 | 亚洲综合五月天婷 | 5060午夜一级毛片 | 五月天婷婷缴情五月免费观看 | 三级不卡| 成人在线免费小视频 | 国产梦呦精品 | 欧美一级人与动毛片免费播放 | 九九视频免费在线观看 | 国产性做久久久久久 | 天天曰夜夜曰 | 国产精品成人免费观看 | 国产专区精品 | 一级毛片不收费 | 国产一区二| 色插视频 | 天天草狠狠干 | 九九热精品免费观看 | 青青草国产一区二区三区 |