最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

利用mycat實現(xiàn)mysql數(shù)據(jù)庫讀寫分離的示例

 更新時間:2018年03月23日 10:36:52   作者:壞~牧羊人  
本篇文章主要介紹了利用mycat實現(xiàn)mysql數(shù)據(jù)庫讀寫分離的示例,mycat是最近很火的一款國人發(fā)明的分布式數(shù)據(jù)庫中間件,它是基于阿里的cobar的基礎(chǔ)上進(jìn)行開發(fā)的,有一定的參考價值,感興趣的小伙伴們可以參考一下

什么是MyCAT

  1. 一個徹底開源的,面向企業(yè)應(yīng)用開發(fā)的大數(shù)據(jù)庫集群
  2. 支持事務(wù)、ACID、可以替代MySQL的加強(qiáng)版數(shù)據(jù)庫
  3. 一個可以視為MySQL集群的企業(yè)級數(shù)據(jù)庫,用來替代昂貴的Oracle集群
  4. 一個融合內(nèi)存緩存技術(shù)、NoSQL技術(shù)、HDFS大數(shù)據(jù)的新型SQL Server
  5. 結(jié)合傳統(tǒng)數(shù)據(jù)庫和新型分布式數(shù)據(jù)倉庫的新一代企業(yè)級數(shù)據(jù)庫產(chǎn)品
  6. 一個新穎的數(shù)據(jù)庫中間件產(chǎn)品

MyCAT關(guān)鍵特性

  1. 支持SQL92標(biāo)準(zhǔn)
  2. 支持MySQL、Oracle、DB2、SQL Server、PostgreSQL等DB的常見SQL語法
  3. 遵守MySQL原生協(xié)議,跨語言,跨平臺,跨數(shù)據(jù)庫的通用中間件代理。
  4. 基于心跳的自動故障切換,支持讀寫分離,支持MySQL主從,以及galera cluster集群。
  5. 支持Galera for MySQL集群,Percona Cluster或者M(jìn)ariaDB cluster
  6. 基于Nio實現(xiàn),有效管理線程,解決高并發(fā)問題。
  7. 支持?jǐn)?shù)據(jù)的多片自動路由與聚合,支持sum,count,max等常用的聚合函數(shù),支持跨庫分頁。
  8. 支持單庫內(nèi)部任意join,支持跨庫2表join,甚至基于caltlet的多表join。
  9. 支持通過全局表,ER關(guān)系的分片策略,實現(xiàn)了高效的多表join查詢。
  10. 支持多租戶方案。
  11. 支持分布式事務(wù)(弱xa)。
  12. 支持XA分布式事務(wù)(1.6.5)。
  13. 支持全局序列號,解決分布式下的主鍵生成問題。
  14. 分片規(guī)則豐富,插件化開發(fā),易于擴(kuò)展。
  15. 強(qiáng)大的web,命令行監(jiān)控。
  16. 支持前端作為MySQL通用代理,后端JDBC方式支持Oracle、DB2、SQL Server 、 mongodb 、巨杉。
  17. 支持密碼加密
  18. 支持服務(wù)降級
  19. 支持IP白名單
  20. 支持SQL黑名單、SQL注入攻擊攔截
  21. 支持prepare預(yù)編譯指令
  22. 支持非堆內(nèi)存(Direct Memory)聚合計算
  23. 支持PostgreSQL的native協(xié)議
  24. 支持MySQL和oracle存儲過程,out參數(shù)、多結(jié)果集返回
  25. 支持zookeeper協(xié)調(diào)主從切換、zk序列、配置zk化
  26. 支持庫內(nèi)分表
  27. 集群基于ZooKeeper管理,在線升級,擴(kuò)容,智能優(yōu)化,大數(shù)據(jù)處理(2.0開發(fā)版)。

1、這里是在mysql主從復(fù)制實現(xiàn)的基礎(chǔ)上,利用mycat做讀寫分離,架構(gòu)圖如下:

2、Demo

2.1 在mysql master上創(chuàng)建數(shù)據(jù)庫創(chuàng)建db1

2.2 在數(shù)據(jù)庫db1創(chuàng)建表student

同時,因為配置好了mysql主從復(fù)制,在mysql slave上也有一樣數(shù)據(jù)庫和表

2.3 編輯 mycat的配置文件server.xml

   <!--表示mycat的登錄用戶名-->
  <user name="test">
        <!--表示mycat的登錄密碼-->
        <property name="password">test</property>
         <!--表示mycat的邏輯數(shù)據(jù)庫名稱,可以自定義-->
        <property name="schemas">TESTDB</property>
    </user>

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

2.4編輯mycat的配置文件schema.xml

<!--TESTDB表示mycat的邏輯數(shù)據(jù)庫名稱
 當(dāng)schema節(jié)點沒有子節(jié)點table的時候,一定要有dataNode屬性存在(指向mysql真實數(shù)據(jù)庫),
-->
<schema name="TESTDB" checkSQLschema="false" sqlMaxLimit="100" dataNode="dn1">
    </schema>
    <!--指定master的數(shù)據(jù)庫db1-->
    <dataNode name="dn1" dataHost="192.168.0.4" database="db1" />
    <!--指定mastet的ip -->
    <dataHost name="192.168.0.4" maxCon="1000" minCon="10" balance="3"
        writeType="0" dbType="mysql" dbDriver="native" switchType="1" slaveThreshold="100">
        <!--表示mysql的心跳狀態(tài)-->
        <heartbeat>select user()</heartbeat>
        <!-- master負(fù)責(zé)寫 -->
        <writeHost host="hostM1" url="192.168.0.4:3306" user="root"
            password="admin">
        <!--slave負(fù)責(zé)讀-->
        <readHost host="hostS2" url="192.168.0.5:3306" user="root" password="admin" />
        </writeHost>
</dataHost>

到這里,利用mycat做讀寫分離就已經(jīng)配置完了

注意 dataHost節(jié)點的下面三個屬性

balance, switchType, writeType

balance="0", 不開啟讀寫分離機(jī)制,所有讀操作都發(fā)送到當(dāng)前可用的writeHost上。

balance="1",全部的readHost與stand by writeHost參與select語句的負(fù)載均衡,簡單的說,當(dāng)雙主雙從模式(M1->S1,M2->S2,并且M1與M2互為主備),正常情況下,M2,S1,S2都參與select語句的負(fù)載均衡。

balance="2",所有讀操作都隨機(jī)的在writeHost、readhost上分發(fā)。

balance="3",所有讀請求隨機(jī)的分發(fā)到writeHost下的readhost執(zhí)行,writeHost不負(fù)擔(dān)讀壓力

writeType表示寫模式

writeType="0",所有的操作發(fā)送到配置的第一個writehost

writeType="1",隨機(jī)發(fā)送到配置的所有writehost

writeType="2",不執(zhí)行寫操作

switchType指的是切換的模式,目前的取值也有4種:

switchType=‘-1‘ 表示不自動切換

switchType=‘1‘ 默認(rèn)值,表示自動切換

switchType=‘2‘ 基于MySQL主從同步的狀態(tài)決定是否切換,心跳語句為show slave status

switchType=‘3‘基于MySQL galary cluster的切換機(jī)制(適合集群)(1.4.1),心跳語句為show status like ‘wsrep%‘。

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Mysql臨時變量的具體使用

    Mysql臨時變量的具體使用

    本文主要介紹了Mysql臨時變量的具體使用,臨時變量有分為用戶變量和會話變量,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-08-08
  • MySQL最常問的十道面試題(2023年最新詳解版)

    MySQL最常問的十道面試題(2023年最新詳解版)

    MySQL是一個關(guān)系型數(shù)據(jù)庫管理系統(tǒng),這是學(xué)習(xí)Java必學(xué)的知識點,也是面試java崗位必考的題目,所以大家要有所重視,這篇文章主要給大家介紹了關(guān)于MySQL最常問的十道面試題,是2023年最新詳細(xì)整理的,需要的朋友可以參考下
    2023-10-10
  • 詳解mysql不等于null和等于null的寫法

    詳解mysql不等于null和等于null的寫法

    這篇文章主要介紹了詳解mysql不等于null和等于null的寫法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-09-09
  • mysql字段為null為何不能使用!=

    mysql字段為null為何不能使用!=

    這篇文章主要介紹了mysql字段為null為何不能使用!=問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-05-05
  • MySQL PXC構(gòu)建一個新節(jié)點只需IST傳輸?shù)姆椒?推薦)

    MySQL PXC構(gòu)建一個新節(jié)點只需IST傳輸?shù)姆椒?推薦)

    下面小編就為大家?guī)硪黄狹ySQL PXC構(gòu)建一個新節(jié)點只需IST傳輸?shù)姆椒?推薦)。小編覺的挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-03-03
  • MySQL預(yù)編譯語句過多告警排查及解決方案

    MySQL預(yù)編譯語句過多告警排查及解決方案

    在使用Spring Cloud Alibaba搭建的微服務(wù)架構(gòu)中,項目采用ShardingSphere進(jìn)行分庫分表,MyBatis-Plus作為持久層,線上環(huán)境突發(fā)大量預(yù)編譯語句過多的數(shù)據(jù)庫告警,導(dǎo)致系統(tǒng)性能下降,所以本文給大家介紹了MySQL預(yù)編譯語句過多告警排查及解決方案,需要的朋友可以參考下
    2025-01-01
  • MySQL刪除外鍵問題小結(jié)

    MySQL刪除外鍵問題小結(jié)

    mysql刪除外鍵抱錯Error on rename of ./ruler/test2child to ./ruler/#sql2-298-92 (errno: 152),怎么回事,有好的方法可以解決嗎?下面看下腳本之家小編給大家?guī)淼慕鉀Q思路
    2016-08-08
  • Mysql誤刪除DELETE數(shù)據(jù)找回操作指南

    Mysql誤刪除DELETE數(shù)據(jù)找回操作指南

    如果我們在數(shù)據(jù)庫中不小心執(zhí)行了類似"delete from t1"這樣的不帶where條件的語句,那么整張表的數(shù)據(jù)就全被刪除了,下面這篇文章主要給大家介紹了關(guān)于Mysql誤刪除DELETE數(shù)據(jù)找回操作的相關(guān)資料,需要的朋友可以參考下
    2023-05-05
  • 將.sql文件導(dǎo)入到MySQL數(shù)據(jù)庫具體步驟

    將.sql文件導(dǎo)入到MySQL數(shù)據(jù)庫具體步驟

    MySQL有多種方法導(dǎo)入多個.sql文件,下面這篇文章主要介紹了將.sql文件導(dǎo)入到MySQL數(shù)據(jù)庫的具體步驟,文中將實現(xiàn)步驟介紹的非常詳細(xì),需要的朋友可以參考下
    2023-10-10
  • 簡述MySQL InnoDB存儲引擎

    簡述MySQL InnoDB存儲引擎

    這篇文章主要介紹了MySQL InnoDB存儲引擎的相關(guān)資料,幫助大家更好的了解MySQL的存儲引擎,感興趣的朋友可以了解下
    2020-08-08

最新評論

英德市| 东方市| 将乐县| 舞钢市| 微山县| 卢龙县| 阜南县| 镇平县| 措美县| 梨树县| 太和县| 科尔| 兴隆县| 万全县| 双柏县| 乐昌市| 赤壁市| 大安市| 柏乡县| 新邵县| 西昌市| 闸北区| 科尔| 应用必备| 玉林市| 吉水县| 西盟| 桦川县| 桑日县| 平塘县| 昌邑市| 平塘县| 安阳县| 即墨市| 广水市| 天全县| 镇康县| 莱州市| 齐齐哈尔市| 宣恩县| 将乐县|