日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

MyCat数据库分片

發布時間:2025/3/20 数据库 15 豆豆
生活随笔 收集整理的這篇文章主要介紹了 MyCat数据库分片 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

水平分片

采用橫向切割
把商品表分片,存儲到三個數據節點上

數據節點
每一個數據節點,就是一個數據庫
每一個數據庫,就是一個數據節點

一個mysql實例上,可以有多個數據庫
數據庫版本 : mysql-5.6

節點1、3
ip:192.168.25.134
數據庫名 : db1、db3

節點2
ip:192.168.25.166
數據庫名 : db2

Mycat安裝

可以單獨安裝一臺服務器
也可以安裝到某一個節點上
這里,安裝到節點1上

配置schema.xml

Schema.xml作為MyCat中重要的配置文件之一
管理著MyCat的邏輯庫、表、分片規則、DataNode以及DataSource

Schema標簽
用于定義MyCat實例中的邏輯庫

Table標簽
定義了MyCat中的邏輯表

dataNode標簽
定義了MyCat中的數據節點
也就是我們通常說所的數據分片

dataHost標簽
在mycat邏輯庫中也是作為最底層的標簽存在
直接定義了具體的數據庫實例、讀寫分離配置和心跳語句

注意

Linux下,mysql默認區分大小寫
設置不區分大小寫,在MySQL的配置文件中my.ini中添加
lower_case_table_names = 1

配置信息

<?xml version="1.0"?> <!DOCTYPE mycat:schema SYSTEM "schema.dtd"> <mycat:schema xmlns:mycat="http://org.opencloudb/"><schema name="TESTDB" checkSQLschema="false" sqlMaxLimit="100"><!-- auto sharding by id (long) --><table name="TB_ITEM" dataNode="dn1,dn2,dn3" rule="auto-sharding-long" /><table name="TB_USER" primaryKey="ID" type="global" dataNode="dn1,dn2" /></schema><dataNode name="dn1" dataHost="localhost1" database="db1" /><dataNode name="dn2" dataHost="localhost2" database="db2" /><dataNode name="dn3" dataHost="localhost1" database="db3" /><dataHost name="localhost1" maxCon="1000" minCon="10" balance="0"writeType="0" dbType="mysql" dbDriver="native" switchType="1" slaveThreshold="100"><heartbeat>select user()</heartbeat><!-- can have multi write hosts --><writeHost host="hostM1" url="192.168.25.134:3306" user="root"password="root"><!-- can have multi read hosts --></writeHost></dataHost><dataHost name="localhost2" maxCon="1000" minCon="10" balance="0"writeType="0" dbType="mysql" dbDriver="native" switchType="1" slaveThreshold="100"><heartbeat>select user()</heartbeat><!-- can have multi write hosts --><writeHost host="hostM1" url="192.168.25.166:3306" user="root"password="root"><!-- can have multi read hosts --></writeHost></dataHost> </mycat:schema>

schema,一個數據庫
table,一個數據表,存放到三個數據節點
DataNode,一個數據節點,對應一個數據庫
dataHost,一個數據節點,對應一個dataHost

配置server.xml

保存mycat需要的系統配置信息
最常用的配置用戶名、密碼及權限

配置信息

<user name="test"><property name="password">test</property><property name="schemas">TESTDB</property><property name="readOnly">true</property> </user>

配置rule.xml

rule.xml里面就定義了我們對表進行拆分所涉及到的規則定義
可以靈活的對表使用不同的分片算法
或者對表使用相同的算法但具體的參數不同。

這個文件里面主要有tableRule和function這兩個標簽
在具體使用過程中,可以按照需求添加tableRule和function
這里,此配置文件可以不用修改,使用默認即可

創建表
配置完畢后,重新啟動mycat
使用mysql客戶端連接mycat,創建表

商品表

DROP TABLE IF EXISTS `tb_item`; CREATE TABLE `tb_item` (`id` bigint(20) NOT NULL COMMENT '商品id,同時也是商品編號',`title` varchar(100) NOT NULL COMMENT '商品標題',`sell_point` varchar(500) DEFAULT NULL COMMENT '商品賣點',`price` bigint(20) NOT NULL COMMENT '商品價格,單位為:分',`num` int(10) NOT NULL COMMENT '庫存數量',`barcode` varchar(30) DEFAULT NULL COMMENT '商品條形碼',`image` varchar(500) DEFAULT NULL COMMENT '商品圖片',`cid` bigint(10) NOT NULL COMMENT '所屬類目,葉子類目',`status` tinyint(4) NOT NULL DEFAULT '1' COMMENT '商品狀態,1-正常,2-下架,3-刪除',`created` datetime NOT NULL COMMENT '創建時間',`updated` datetime NOT NULL COMMENT '更新時間',PRIMARY KEY (`id`),KEY `cid` (`cid`),KEY `status` (`status`),KEY `updated` (`updated`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='商品表';

插入數據

INSERT INTO TB_ITEM(ID,TITLE,SELL_POINT,PRICE,NUM,BARCODE,IMAGE,CID,STATUS,CREATED,UPDATED) VALUES ('1', 'new2 - 阿爾卡特 (OT-927) 炭黑 聯通3G手機 雙卡雙待', '清倉!僅北京,武漢倉有貨!', '29900000', '99999', '', 'http://image.taotao.com/jd/4ef8861cf6854de9889f3db9b24dc371.jpg', '560', '1', '2015-03-08 21:33:18', '2015-04-11 20:38:38'); INSERT INTO TB_ITEM(ID,TITLE,SELL_POINT,PRICE,NUM,BARCODE,IMAGE,CID,STATUS,CREATED,UPDATED) VALUES ('5000000', 'new8- 三星 W999 黑色 電信3G手機 雙卡雙待雙通', '下單送12000毫安移動電源!雙3.5英寸魔煥炫屏,以非凡視野縱觀天下時局,尊崇翻蓋設計,張弛中,盡顯從容氣度!', '1100', '99999', '', 'http://image.taotao.com/jd/d2ac340e728d4c6181e763e772a9944a.jpg', '560', '1', '2015-03-08 21:27:54', '2015-04-12 17:10:43');INSERT INTO TB_ITEM(ID,TITLE,SELL_POINT,PRICE,NUM,BARCODE,IMAGE,CID,STATUS,CREATED,UPDATED) VALUES ('5000001', '阿爾卡特 (OT-979) 冰川白 聯通3G手機', '清倉!僅上海倉有貨!', '30900', '99999', null, 'http://image.taotao.com/jd/a69d0d09a1a04164969c2d0369659b1a.jpg', '560', '1', '2015-03-08 21:33:18', '2015-03-08 21:33:18'); INSERT INTO TB_ITEM(ID,TITLE,SELL_POINT,PRICE,NUM,BARCODE,IMAGE,CID,STATUS,CREATED,UPDATED) VALUES ('10000000', '阿爾卡特 (OT-927) 單電版 炭黑 聯通3G手機 雙卡雙待', '清倉!僅北京,武漢倉有貨!', '24900', '99999', null, 'http://image.taotao.com/jd/9c1fcdf2bf20450788195c707da00a87.jpg', '560', '1', '2015-03-08 21:33:18', '2015-03-08 21:33:18');INSERT INTO TB_ITEM(ID,TITLE,SELL_POINT,PRICE,NUM,BARCODE,IMAGE,CID,STATUS,CREATED,UPDATED) VALUES ('10000001', '阿爾卡特 (OT-986+) 玫紅 AK47 加強版 聯通3G手機', '僅上海,廣州,沈陽倉有貨!預購從速!', '49900', '99999', null, 'http://image.taotao.com/jd/65e2007d41dc4e3cb308833a1a910f8d.jpg', '560', '1', '2015-03-08 21:32:31', '2015-03-08 21:32:31'); INSERT INTO TB_ITEM(ID,TITLE,SELL_POINT,PRICE,NUM,BARCODE,IMAGE,CID,STATUS,CREATED,UPDATED) VALUES ('15000000', '阿爾卡特 (OT-986+) 曜石黑 AK47 加強版 聯通3G手機', '少量庫存,搶完即止!<a target=\"blank\" href=\"http://sale.jd.com/act/bxYeI1346g.html?erpad_source=erpad\">“領券更優惠!”</a>', '49900', '99999', null, 'http://image.taotao.com/jd/b3251c85da8e4302b7389f3371dd0a68.jpg', '560', '1', '2015-03-08 21:31:36', '2015-03-08 21:31:36');INSERT INTO TB_ITEM(ID,TITLE,SELL_POINT,PRICE,NUM,BARCODE,IMAGE,CID,STATUS,CREATED,UPDATED) VALUES ('15000001', '三星 B9120 鈦灰色 聯通3G手機 雙卡雙待雙通', '下單即送10400毫安移動電源!再贈手機魔法盒!', '439900', '99999', null, 'http://image.taotao.com/jd/c1775819c7e44b1c903f27514e70b998.jpg', '560', '1', '2015-03-08 21:29:27', '2015-03-08 21:29:27');

分片測試

配置的分片規則為“auto-sharding-long”
mycat會根據此規則自動分片

每個datanode中保存一定數量的數據
根據長整型id進行分片

測試結果
Datanode1:1~5000000
Datanode2:5000000~10000000
Datanode3:10000001~15000000

當15000000以上的id插入時報錯
[Err] 1064 - can’t find any valid datanode :TB_ITEM -> ID -> 15000001

解決方法
需要添加節點,存儲更多的數據

總結

以上是生活随笔為你收集整理的MyCat数据库分片的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 人妻少妇精品视频一区二区三区 | 免费看国产曰批40分钟粉红裤头 | 亚洲自拍偷拍网站 | 亚洲高清自拍 | japanese24hdxxxx日韩 | 蜜臀久久99精品久久久画质超高清 | 日本网站在线免费观看 | 亚洲1区| 涩涩屋视频在线观看 | 欧美日韩性视频 | 国产sm调教一区二区 | 色综合天天综合综合国产 | 久久久午夜精品 | 日韩精品一区二区av | 中文字幕久久久久久久 | 精品香蕉一区二区三区 | 免费在线小视频 | 极品美女av | 日韩精品一区二区三区在线 | 色福利在线 | 波多野结衣午夜 | 超碰88| 天天操网站 | 91av免费观看 | 奇米影视播放器 | 国产中文字幕在线视频 | 一区二区三区在线免费观看 | 国产精品资源站 | 天天撸天天射 | 岛国二区三区 | 一区二区三区在线播放视频 | 国产精品一区二区久久久 | 在线波多野结衣 | 美女被爆操网站 | 黄色小视频免费在线观看 | 欧美超逼视频 | 日韩精品中文字 | 女人性做爰100部免费 | 香蕉视频官方网站 | 日日爱夜夜爱 | 日本精品一区二区在线观看 | 香蕉视频链接 | 欧美日韩综合在线观看 | 少妇av一区二区三区无码 | 国产精品制服诱惑 | 久久澡| 人妻少妇精品无码专区久久 | 人人看人人看 | 久久com | 青青草久久伊人 | 91爱啪啪| 亚洲毛片一区二区 | 伊人蕉久| 夜夜躁很很躁日日躁麻豆 | 91精品综合久久久久久五月天 | 99r热| 欧美精品一区二区成人 | 久久艹这里只有精品 | 天堂视频网 | 五月天堂婷婷 | 女人高潮娇喘声mp3 乱色视频 | 双性懵懂美人被强制调教 | 国产美女无遮挡免费视频 | 色欲av无码一区二区三区 | 国产在线免费 | 亚洲美女高潮久久久 | 欧美一区二区性久久久 | 超碰97国产 | 9.1成人看片免费版 日韩经典在线 | 在线网站av | 国精产品一区一区三区视频 | 久久久久久久久久久91 | 熟妇人妻精品一区二区三区视频 | 天天干夜夜玩 | 午夜少妇影院 | 久久九九久精品国产免费直播 | 成人性生交大免费看 | 亚洲av无码一区二区乱孑伦as | 超碰在线超碰 | 综合激情在线 | 中文字幕在线官网 | 99国产视频在线 | 欧洲女性下面有没有毛发 | 中文字幕在线观看免费 | 欧美人与性囗牲恔配 | 自拍偷拍视频在线 | 欧美一区二区视频免费观看 | 中文永久免费观看 | 中文亚洲av片在线观看 | 午夜污 | 中文字幕不卡在线播放 | 精品爆乳一区二区三区 | 欧美精品卡一卡二 | 双性娇喘浑圆奶水h男男漫画 | 日本美女视频一区 | 日日噜噜噜噜久久久精品毛片 | 让人下面流水的视频 | 青青色在线观看 | 日本久久久久久久久久久 |