mycat+mysql分片
下載mycat完成環境變數配置:
name:MYCAT_HOME
value:D:\user\mycat
加入系統路徑
name:path
value:;%MYCAT_HOME%\bin;
server,rule的xml檔案為預設mycat配置和分片規則,主要配置schamal:
<?xml version="1.0"?> <!DOCTYPE mycat:schema SYSTEM "schema.dtd"> <mycat:schema xmlns:mycat="http://io.mycat/"> <schema name="TESTDB" checkSQLschema="false" sqlMaxLimit="100"> <table name="h" primaryKey="ID" dataNode="ddn1,ddn2,ddn3,ddn4,ddn5,ddn6,ddn7,ddn8" rule="mod-long" /> </schema> <dataNode name="dn1" dataHost="localhost1" database="db1" /> <dataNode name="dn2" dataHost="localhost1" database="db2" /> <dataNode name="dn3" dataHost="localhost2" database="db3" /> <dataNode name="dn4" dataHost="localhost2" database="db2" /> <dataNode name="ddn1" dataHost="localhost1" database="db1" /> <dataNode name="ddn2" dataHost="localhost1" database="db2" /> <dataNode name="ddn3" dataHost="localhost1" database="db3" /> <dataNode name="ddn4" dataHost="localhost1" database="db4" /> <dataNode name="ddn5" dataHost="localhost2" database="db1" /> <dataNode name="ddn6" dataHost="localhost2" database="db2" /> <dataNode name="ddn7" dataHost="localhost2" database="db3" /> <dataNode name="ddn8" dataHost="localhost2" database="db4" /> <dataHost name="localhost1" maxCon="1000" minCon="10" balance="0" writeType="0" dbType="mysql" dbDriver="native" switchType="1" slaveThreshold="100"> <heartbeat>select user()</heartbeat> <writeHost host="hostM1" url="localhost:3306" user="root" password="19941101"> <readHost host="hostS2" url="localhost:3306" user="root" password="1101" /> </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> <writeHost host="hostM2" url="19.168.172.128:3306" user="root" password="19941101"> <readHost host="hostS2" url="19.168.172.128:3306" user="root" password="1101" /> </writeHost> </dataHost> </mycat:schema>
一個虛擬表可以對應多個節點,並指明分片方法和主鍵,一個node對應一個數據庫,在host中配置具體的資料庫,並在具體庫中建立相應表,完成和實際表的對映。
rule規則:
<tableRule name="mod-long"> <rule> <columns>ID</columns> <algorithm>mod-long</algorithm> </rule> </tableRule> <function name="mod-long" class="io.mycat.route.function.PartitionByMod"> <!-- how many data nodes --> <property name="count">3</property> </function>
在mycat插入資料時,ID為必須插入的欄位,這是插入哪個資料庫具體表的依據。
配置完成後開啟mycat bin目錄:
mycat start
啟動服務
mycat埠為8066
INSERT INTO h(ID,task) values (6,'hg');
mycat會取模以後插入具體庫和表
得到一個彙集所有表的虛擬表以及可以將資料插入任意表,完成基本操作
相關推薦
mycat+mysql分片
下載mycat完成環境變數配置: name:MYCAT_HOME value:D:\user\mycat 加入系統路徑 name:path value:;%MYCAT_HOME%\bin; server,rule的xml檔案為預設mycat配置和分片規則,主要
MyCat之路 | Mysql分片的配置
需求及環境分析 1、需求 把 tb_item 表分片儲存到三個資料節點上。 2、安裝環境分析 一臺 mycat伺服器: mycat-server:10.73.150.4 兩臺 mysql 資料庫伺服器: mysql-server-01:10.73.150
mycat 離散分片 -> 程序指定分區的分片
spa ssi ica arc direct ted def cut roo 1。程序指定分區的分片 此規則是在運行階段有應用自主決定路由到那個分片。 此方法為直接依據字符子串(必須是數字)計算分區號(由應用傳遞參數。顯式指定分區號)。 2
haproxy+keepalived+mycat+mysql (讀寫分離)
haproxy+keepalived+m描述:架構方案: mysql (master/slave) --gtid 方式主備(pos 也可)mycat (master/slave) --xinted 插件時間主備模式haproxy (master/slave) --keepalived 自動切換--keepal
mycat分離分片表
mysql innobackupex mysql主從 mycat rename table 背景:當前分片中有5張表,計劃將按月分片的日誌表分離到其他服務器。 要求:不影響業務情況下進行分離日誌表。 實驗計劃: 1.使用pt工具導出部分庫、部分表,並應用備份集。 2.搭建部分表主
mysql分片
-type position 復合 中一 更改 一個數據庫 特定 拆分 單獨 mysql向外擴展(橫向擴展或者水平擴展)策略主要有三方面:復制、拆分、數據分片; 水平擴展的最簡單的方式就是通過復制將數據分發到多個服務器上,然後將備庫用於讀查詢。復制技術用於以讀為主的服務效果
網際網路架構之Mycat的分片規則
常用的分片規則一共有10個 一、列舉法 <tableRule name="sharding-by-intfile"> <rule> <columns>user_id</columns> <algorithm>hash-int
針對innodb_flush_method引數的理解和對比測試(mycat+mysql)
mysql的innodb_flush_method這個引數控制著innodb資料檔案及redo log的開啟、刷寫模式,對於這個引數,文件上是這樣描述的: 有三個值:fdatasync(預設),O_DSYNC,O_DIRECT 預設是fdatasync,呼叫fsync()去刷資料檔
Mycat-mysql資料庫切分
1.資料庫切分概述 還來資料的儲存與訪問成為系統設計與使用的瓶頸問題。 兩種型別:聯機事物處理(OLTP)和聯機分析處理(OLAP) 2.資料切分:就是指通過某種特定的條件,將我們存放在同一個資料庫中的資料分散存放到多個數據庫(主 機)上面,以達到分散單臺裝置負載
mycat+mysql實現多租戶配置
前言 網上的許多mycat安裝教程並不能解決我遇到的問題,特此記錄一下 mycat安裝 mycat的安裝很簡單,但是版本很重要,我就在這裡栽了跟頭… 一開始隨便在網上找了一個版本如下: 解壓後安裝步驟如下: 配置環境變數path: D:\mycat1.4\M
mycat+mysql叢集:實現讀寫分離,分庫分表
1.mycat文件:https://github.com/MyCATApache/Mycat-doc 官方網站:http://www.mycat.org.cn/2.mycat的優點:配置簡單,靈活可實現讀寫分離可利用多種規則實現分庫分表心跳機制,自動踢出故障機組
mycat 表分片
分表分庫雖然能解決大表對資料庫系統的壓力,但它並不是萬能的,也有一些不利之處,因此首要問題是, 分不分庫,分哪些庫,什麼規則分,分多少分片。 原則一:能不分就不分,1000 萬以內的表,不建議分片,通過合適的索引,讀寫分離等方式,可以很好的解決效能問題。 原則二:分片數量儘量
MyCAT+MySQL 搭建高可用企業級數據庫集群
調試 元素 eat linux 核心 適合 算法 用途 什麽 第1章 課程介紹課程介紹1-1 MyCAT導學 試看1-2 課程介紹 第2章 MyCAT入門這一章中,我們將回顧了垂直切分,水平切分,分庫分表等基礎概念,然後快速回如何安裝和啟動MyCAT的,介紹如何以打包好的可
CentOS安裝配置Mycat+mysql水平分割,實現分散式儲存
轉自http://blog.csdn.net/testcs_dn/article/details/51438216 謝謝作者的貢獻! 環境:CentOS6.5 JDK1.8 MySQL5.6.35 MyCat1.4 1.首先安裝MySQL,安裝步驟可以參考http://b
Mycat 月分片方法
概述 本篇文章主要介紹Mycat以月進行分片的方法,包括配置方法、注意事項等。 mycat版本:1.4 資料節點:dn1,dn2,dn3 架構:主從 配置 建立測試表 CREATE TABLE `tdate` ( `id` int(11) NOT NULL, `cr
資料庫專家:MySQL分片水很深
幾年前,有客戶來找我,希望獲得關於如何對系統分片的一些指導建議。他告訴我說,自從他知道很多應用MySQL的巨頭(比如Facebook和Twitter)都在使用分片技術以後他就也想這麼做。他們(這些巨頭)都是聰明人,所以很自然他也相信自己需要這麼做。 我停了一會然後問他的資
MySQL分片水很深
在與客戶討論分片決策的時候,我經常會先給他們講下面這個真實的故事。幾年前,有客戶來找我,希望獲得關於如何對系統分片的一些指導建議。他告訴我說,自從他知道很多應用MySQL的巨頭(比如Facebook和Twitter)都在使用分片技術以後他就也想這麼做。他們(這些巨頭)都
Mycat+Mysql主從複製+haproxy+keepalived實現高可用的分庫分表叢集方案
一, 部署架構 1.1架構圖 1.2 軟體版本 作業系統: CentOS2-7-X86_64-DVD-1708.iso JDK 版本: jdk1.8.0_11 Keepalived 版本: keepalived-1.2.18.tar.gz
keepalived+mycat+mysql框架搭建
介紹 Keepalived: v1.2.13 Linux:centos x64 6.8版本 Mycat:1.5.1版本 Mysql:5.6.21版本 nc: 1.84-24 ipvsadm: 1.26-4 jdk:1.7 架構介紹: 四臺主機: Master:192.16
mycat 連續分片 -> 按日期(天)分片
1,按日期(天)分片 按日期(天)分片:從開始日期算起,按照天數來分片 例如,從2016-01-01,每10天一個分片 注意事項:需要提前將分片規劃好,建好,否則有可能日期超出實際配置分片數 2,新增配置檔案 在function.xml裡面進行