mycat全域性自增

2022-07-12 07:18:10 字數 1782 閱讀 9981

指定自增型別

[root@node002 conf]# vi   /usr/local/mycat/conf/server.xml 

每個引數代表的含義:

0:本地檔案自增方式。

1:使用mysql自增。

2:使用本地時間戳方式自增。(linux時間)

3:zk分布式方式

4:zookeeper自增方式

因為4之前的都不好用,所以用第四個(4:zookeeper自增方式),以下是配置的步驟:

1、指定自增型別(server.xml )

[root@node002 conf]# vi   /usr/local/mycat/conf/server.xml 

2、指定zookeeper位址(myid.properties)

[root@node002 conf]# vi    /usr/local/mycat/conf/myid.properties

3、指定邏輯表主鍵,開啟自增(schema.xml)

[root@node002 conf]# vi    /usr/local/mycat/conf/schema.xml

4、指定表的id(minid、maxid、curid)

連線zookeeper所在伺服器

[root@node001 ~]#cd /usr/local/zkcluster/

[root@node001 zkcluster]#ls

zk1 zk2 zk3 zookeeper.out

進入集群節點zk1

[root@node001 zkcluster]#./zk1/bin/zkcli.sh

[zk: localhost:2181(connected) 2]ls /

[dubbo, zookeeper]

刪除節點中部署的服務

[zk: localhost:2181(connected) 3]rmr   /dubbo

[zk: localhost:2181(connected) 5]ls /

[zookeeper]

退出[zk: localhost:2181(connected) 6]quit

quitting...

Mycat 全域性序列

在實現分庫分表的情況下,資料庫自增主鍵已無法保證主鍵的全域性唯一。所以,mact提供了全區sequence,並且提供了包含本地配置和資料庫配置等多種實現方式。1.本地檔案 原理 此方式mycat將sequence配置到檔案中,當使用到sequence中的配置後,mycat會更下classpath中的...

mycat 全域性序列

解決主鍵衝突問題 例如id自增的order表,如果分布式情況下不處理的話,當每個表的第一條資料id都是1。怎麼確保id唯一呢?解決辦法 1 本地檔案 不推薦 2 資料庫方式 推薦 3 時間戳 位數較多,佔空間多,並且不安全 資料庫方式詳解 原理 利用資料庫的乙個表來進行計數累加。但是並不是每次生成序...

Mycat全域性序列號

全域性序列號是mycat提供的乙個新功能,為了實現分庫分表情況下,表的主鍵是全域性唯一,而預設的mysql的自增長主鍵無法滿足這個要求。全域性序列號的語法符合標準sql規範。其格式為 next value for mycatseq global 其中mycatseq global是序列號的名字,my...