MySQL之讀寫(xiě)分離-sharding-jdbc

版本及環(huán)境

  • springboot:2.3.1.RELEASE
  • shardingsphere:4.0.0-RC1
  • 配置好主從復(fù)制的2-3臺(tái)mysql節(jié)點(diǎn)

maven依賴

        <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>2.0.1</version>
        </dependency>

        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <scope>runtime</scope>
        </dependency>

        <!--druid-->
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid-spring-boot-starter</artifactId>
            <version>1.2.6</version>
        </dependency>

        <!--mysql讀寫(xiě)分離 sharding-jdbc4.x版本-->
        <dependency>
            <groupId>org.apache.shardingsphere</groupId>
            <artifactId>sharding-jdbc-spring-boot-starter</artifactId>
            <version>${shardingsphere-version}</version>
        </dependency>
        <dependency>
            <groupId>org.apache.shardingsphere</groupId>
            <artifactId>sharding-core-common</artifactId>
            <version>${shardingsphere-version}</version>
        </dependency>

配置文件

db:
  db: ds
  db0: ds0
  db1: ds1

spring:
  main:
    allow-bean-definition-overriding: true
  shardingsphere:
    datasource:
      names: ${db.db},${db.db0},${db.db1}
      # 配置主庫(kù)
      ds:
        type: com.alibaba.druid.pool.DruidDataSource
        driverClassName: com.mysql.cj.jdbc.Driver
        url: jdbc:mysql://192.168.77.20:3316/test?useUnicode=true&characterEncoding=utf8&tinyInt1isBit=false&useSSL=false&serverTimezone=GMT%2B8
        username: root
        password: 123456
        #最大連接數(shù)
        maxPoolSize: 10
        minPoolSize: 5
      ds0: # 配置第一個(gè)從庫(kù)
        type: com.alibaba.druid.pool.DruidDataSource
        driverClassName: com.mysql.cj.jdbc.Driver
        url: jdbc:mysql://192.168.77.20:3317/test?useUnicode=true&characterEncoding=UTF-8&allowMultiQueries=true&useSSL=false&serverTimezone=GMT%2B8
        username: root
        password: 123456
        maxPoolSize: 5
        minPoolSize: 2
      ds1: # 配置第二個(gè)從庫(kù)
        type: com.alibaba.druid.pool.DruidDataSource
        driverClassName: com.mysql.cj.jdbc.Driver
        url: jdbc:mysql://192.168.77.20:3317/test?useUnicode=true&characterEncoding=UTF-8&allowMultiQueries=true&useSSL=false&serverTimezone=GMT%2B8
        username: root
        password: 123456
        maxPoolSize: 5
        minPoolSize: 2
    # 配置默認(rèn)數(shù)據(jù)源愉昆,主要用于寫(xiě)倔丈,注意一定要配讀寫(xiě)分離黔夭,否則會(huì)把所有節(jié)點(diǎn)都當(dāng)作slave蒋譬,導(dǎo)致master壓力太大
    sharding:
      default-data-source-name: ${db.db}
    # 配置讀寫(xiě)分離马昙,配置之前一定要確認(rèn)數(shù)據(jù)庫(kù)做了主從復(fù)制
    masterslave:
      # 名稱岖寞,任意
      name: ms
      load-balance-algorithm-type: round_robin # 配置從庫(kù)選擇策略箱熬,提供輪詢與隨機(jī)钧萍,這里選擇用輪詢//random 隨機(jī) //round_robin 輪詢
      master-data-source-name: ${db.db}
      slave-data-source-names: ${db.db0},${db.db1}
    props:
      sql: # 開(kāi)啟SQL顯示春畔,默認(rèn)值: false脱货,注意:僅配置讀寫(xiě)分離時(shí)不會(huì)打印日志!B梢獭振峻!
        show: true
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市择份,隨后出現(xiàn)的幾起案子扣孟,更是在濱河造成了極大的恐慌,老刑警劉巖荣赶,帶你破解...
    沈念sama閱讀 217,734評(píng)論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件凤价,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡拔创,警方通過(guò)查閱死者的電腦和手機(jī)利诺,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,931評(píng)論 3 394
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)剩燥,“玉大人慢逾,你說(shuō)我怎么就攤上這事。” “怎么了侣滩?”我有些...
    開(kāi)封第一講書(shū)人閱讀 164,133評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵口注,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我胜卤,道長(zhǎng)疆导,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,532評(píng)論 1 293
  • 正文 為了忘掉前任葛躏,我火速辦了婚禮澈段,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘舰攒。我一直安慰自己败富,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,585評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布摩窃。 她就那樣靜靜地躺著兽叮,像睡著了一般。 火紅的嫁衣襯著肌膚如雪猾愿。 梳的紋絲不亂的頭發(fā)上鹦聪,一...
    開(kāi)封第一講書(shū)人閱讀 51,462評(píng)論 1 302
  • 那天,我揣著相機(jī)與錄音蒂秘,去河邊找鬼泽本。 笑死,一個(gè)胖子當(dāng)著我的面吹牛姻僧,可吹牛的內(nèi)容都是我干的规丽。 我是一名探鬼主播,決...
    沈念sama閱讀 40,262評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼撇贺,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼赌莺!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起松嘶,我...
    開(kāi)封第一講書(shū)人閱讀 39,153評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤艘狭,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后翠订,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體缓升,經(jīng)...
    沈念sama閱讀 45,587評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,792評(píng)論 3 336
  • 正文 我和宋清朗相戀三年蕴轨,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了港谊。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,919評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡橙弱,死狀恐怖歧寺,靈堂內(nèi)的尸體忽然破棺而出燥狰,到底是詐尸還是另有隱情,我是刑警寧澤斜筐,帶...
    沈念sama閱讀 35,635評(píng)論 5 345
  • 正文 年R本政府宣布龙致,位于F島的核電站,受9級(jí)特大地震影響顷链,放射性物質(zhì)發(fā)生泄漏目代。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,237評(píng)論 3 329
  • 文/蒙蒙 一嗤练、第九天 我趴在偏房一處隱蔽的房頂上張望榛了。 院中可真熱鬧,春花似錦煞抬、人聲如沸霜大。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,855評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)战坤。三九已至,卻和暖如春残拐,著一層夾襖步出監(jiān)牢的瞬間途茫,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,983評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工溪食, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留囊卜,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,048評(píng)論 3 370
  • 正文 我出身青樓眠菇,卻偏偏與公主長(zhǎng)得像边败,于是被迫代替她去往敵國(guó)和親袱衷。 傳聞我的和親對(duì)象是個(gè)殘疾皇子捎废,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,864評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容