mycat 的配置檔案都在 conf 目錄裡面,這裡介紹幾個常用的檔案
節點與屬性介紹
配置邏輯庫標籤
name ----邏輯庫名稱
checksqlschema ----是否檢查sql語法中的schema資訊
sqlmaxlimit ----mycat 在執行 sql 的時候,如果 sql 語句中沒有 limit 子句.自動增加 limit 子句. 避免一次性得到過多的資料,影響效率. limit子句的限制數量預設配置為100.如果 sql中有具體的 limit子句,當前屬性失效.
sql : select * from table; mycat 解析後: select * from table limit 100;
定義邏輯表的標籤 name ----邏輯表名 datanode ----資料節點名稱 rule ----分片規則名稱
定義資料節點的標籤
name ----資料節點名稱
datahost ----引用 datahost 標籤的 name 值,
database ----物理資料庫 database 名稱
定義資料主機的標籤
name ----定義邏輯上的資料主機名稱
max connections 最大連線數
min connections 最小連線數
dbtype 資料庫型別
datahost 子標籤 writehost寫資料的資料庫定義標籤. 實現讀寫分離操作.
host 資料庫命名
url 資料庫訪問路徑
user 資料庫訪問使用者名稱
password 訪問使用者密碼
writehost 子標籤 readhost
rule.xml
用於定義分片規則的配置檔案
mycat 預設的分片規則: 以 500 萬為單位,實現分片規則
邏輯庫 a 對應 datanode - db1 和 db2. 1-500 萬儲存在 db1 中, 500 萬零 1 到 1000 萬儲存在 db2 中,1000 萬零 1 到 1500 萬儲存在 db1 中.依次類推.
配置讀寫分離:
安裝路徑/bin/mycat start //啟動mycat命令
安裝路徑/bin/mycat stop //停止命令
安裝路徑/bin/mycat restart //重啟命令
安裝路徑/bin/mycat status //檢視 mycat 狀態
命令列訪問方式
mysql -u 使用者名稱 -p 密碼 -hmycat 主機 ip -p8066
使用 mycat 實現分庫時,先在 mycat 中定義邏輯庫與邏輯表,然後在 mycat 的鏈結中執行建立表的命令必須要在 mycat 中執行。因為 mycat 在建立表時,會在表中新增乙個新的列,列名為_slot。
使用 mycat 插入資料時,語句中必須要指定所有的列。即便是乙個完全項插入也不允許省略列名。
Mycat分庫分表
schema.xml 配置 name dn1 datahost localhost1 database db1 name dn2 datahost localhost1 database db2 name dn3 datahost localhost1 database db3 把localhost...
mycat分庫分表
一 修改schema.xml select user 二 修改server.xml 0 0 10 011m 1k0 384m true 123456 testdb user testdb true 三 啟動關閉1 進入bin目錄,2 啟動輸入.mycat start。關閉命令 mycat stop ...
mycat分庫分表
mycat是資料庫分庫分表的中介軟體,mycat使用最多的兩個功能是 讀寫分離和分庫分表功能,支援全域性表和e r關係 這兩個比較實用 mycat相當於是乙個 可以將多個實際資料庫組合成乙個完整的虛擬資料庫 我們可以直接訪問mycat的埠,其使用的是mysql原生的協議連線資料庫進行通訊 mycat...