日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網為廣大站長提供免費收錄網站服務,提交前請做好本站友鏈:【 網站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

作者:楊濤濤

今天有客戶問起:如何匯總多臺 MySQL 數據到一臺上?

我回答:可以嘗試下 MySQL 的多源復制。

我們知道 MySQL 單主一從,單主多從,或者級聯的主從架構我們都見的很多了。但是多主一從這種使用場景比較少,比如圖 1:

技術分享 | MySQL 多源復制場景分析

 

這種架構一般用在以下三類場景
 

1. 備份多臺 Server 的數據到一臺

如果按照數據切分方向來講,那就是垂直切分。比如圖 2,業務 A、B、C、D 是之前拆分好的業務,現在需要把這些拆分好的業務匯總起來備份,那這種需求也很適用于多源復制架構。

實現方法我大概描述下:業務 A、B、C、D 分別位于 4 臺 Server,每臺 Server 分別有一個數據庫來隔離前端的業務數據,那這樣,在從庫就能把四臺業務的數據全部匯總起來,而不需要做額外的操作。那沒有多源復制之前,要實現這類需求,只能在匯總機器上搭建多個 MySQL 實例,那這樣勢必會涉及到跨庫關聯的問題,不但性能急劇下降,管理多個實例也沒有單臺來的容易。

技術分享 | MySQL 多源復制場景分析

 

2. 用來聚合前端多個 Server 的分片數據。

同樣,按照數據切分方向來講,屬于水平切分。比如圖 3,按照年份拆分好的數據,要做一個匯總數據展現,那這種架構也非常合適。

實現方法稍微復雜些:比如所有 Server 共享同一數據庫和表,一般為了開發極端透明,前端配置有分庫分表的中間件,比如愛可生的 DBLE。

技術分享 | MySQL 多源復制場景分析

 

3. 匯總并合并多個 Server 的數據

第三類和第一種場景類似。不一樣的是不僅僅是數據需要匯總到目標端,還得合并這些數據,這就比第一種來的相對復雜些。比如圖 4,那這樣的需求,是不是也適合多源復制呢?答案是 YES。

技術分享 | MySQL 多源復制場景分析

 

那具體怎么做呢?

我舉個例子,比如下面一張表 A,字段分表為 ID(主鍵)、F1、F2、F3... 、F100。那按照這樣的分法,前端 4 臺 Server 的表分別為:

  • A1(ID,F1,F2,...,F25)
  • A2(ID,F26,F27,...,F50)
  • A3(ID,F51,F52,...,F75)
  • A4(ID,F76,F77,...,F100)

那上面幾張表的數據如果要合并到表 A,可以建立一個 Event,定時的來給表 A 里插入數據。涉及到的核心 SQL 為:

那我們發現這個和第一個類似,只不過,所有的表最后到復制到了相同的數據庫里。

總結下,我上面簡單說明了 MySQL 多源復制的三種常用使用場景,希望對大家有所幫助。

分享到:
標簽:MySQL
用戶無頭像

網友整理

注冊時間:

網站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網站吧!
最新入駐小程序

數獨大挑戰2018-06-03

數獨一種數學游戲,玩家需要根據9

答題星2018-06-03

您可以通過答題星輕松地創建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數有氧達人2018-06-03

記錄運動步數,積累氧氣值。還可偷

每日養生app2018-06-03

每日養生,天天健康

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定