二 myca實戰之實踐

2021-09-02 18:01:05 字數 1210 閱讀 9621

一、配置

mycat配置檔案目錄:mycat/conf

最主要的配置檔案:server.xml、schema.xml、rule.xml

1、server.xml

配置跟例項資料庫的連線資訊,資料庫使用者名稱、密碼、資料庫名稱,如下:

123456

supply

123456

supply,operations,unionauth,crm,message,product,orders,pay,es

2、schema.xml

配置分片節點(datanode)資訊,配置示例如下:

3、rule.xml

user_id

func1

algorithm(演算法)節點是配置分片的規則演算法。

二、啟動關閉

mycat啟動暫停命令

[ops@pre-databases bin]$ ./mycat stop

stopping mycat-server...

stopped mycat-server.

[ops@pre-databases bin]$ ./mycat start

starting mycat-server...

[ops@pre-databases bin]$ ./mycat status

mycat-server is running (3803).

四、實際開發注意點

1、對於分片的表,sum、count函式支援存在缺陷,例如表分了兩片的話,sum,count出來會出現兩條記錄。改進方式是對sum、count出來的結果集再次sum、count。

2、唯一約束,因為分片了,資料庫的唯一約束只在單個表中支援,分片之後如果需要對所有分片進行唯一約束的話,需要借助其他元件。如redis儲存唯一約束值,在插入資料庫時先校驗redis是否存在該key。

3、對兩個結果集進行join操作時,需要區別兩個關聯的結果集在同乙個分片。否則join出來的結果集會出現資料錯誤。

4、設計表結構時,盡量冗餘不會變更的字段。

docker之實戰案例

1 檢視本地的映象 docker images2 檢視執行的容器 docker ps3 啟動容器 docker run it x4 拉取映象 docker pull x第一步 在雲伺服器的根目錄新建乙個mydocker資料夾 mkdir mydocker cd mydocker第二步 新建docke...

併發與多執行緒之實戰二

傳送訊息,經過類sender處理過的訊息 1 只能對已經推送到訊息佇列中的訊息進行包裝 2 對sender例項的拷貝,只是拷貝了指向佇列的指標,而非佇列本身。namespace messaging explicit sender queue q q q templatevoid send messa...

極限程式設計之實踐

今天上班的路上聽了下微軟的webcast,是王為老師講的極限程式設計,回顧了下自己的專案中用到的極限程式設計,就在這整理一下。此專案是自己在2年多之前做的,也算是第一次接觸到極限程式設計。我逐一說明該專案中如何應用極限程式設計的一些要求來完成開發的。此專案組成員為7人,工作環境相對集中,完全可應用極...