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

全部教程
主站蜘蛛池模板: 黄色在线视频网站 | 久草手机在线 | 久久国产精品只做精品 | 亚洲国产www| 国产在线观看一区二区三区四区 | 伊人久久久综在合线久久在播 | 真人毛片免费拍拍拍aa视频 | 欧美高清在线精品一区二区不卡 | 久久久噜噜噜 | 国产精品久久久久影院 | 伊人狠狠丁香婷婷综合色 | 美女被羞羞的网站 | 欧美高清亚洲欧美一区h | 五月婷中文字幕 | 激情综合色综合久久综合 | 国产精品一级毛片不收费 | 成人精品亚洲人成在线 | 久久99中文字幕伊人 | 精品视频在线视频 | 久久久全国免费视频 | 日本一级在线观看视频播放 | 亚洲小视频在线观看 | 97影院午夜午夜伦不卡 | 久久视频免费 | 国产精品久久久久久久福利院 | 亚洲国产精品激情在线观看 | 亚洲精品国产高清不卡在线 | 久久综合欧美 | 欧美又黄又嫩大片a级 | 中文字幕在线一区二区三区 | 中文字幕日本一区波多野不卡 | 精品亚洲一区二区三区在线播放 | 日本高清二区 | 欧美国产综合日韩一区二区 | 国产精品12p| 人人爱天天做夜夜爽毛片 | 成人爽a毛片在线视频 | 一级毛片卡| 九九热免费视频 | 日韩高清欧美精品亚洲 | 国产一区高清视频 |