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

創新互聯建站專業為企業提供前郭網站建設、前郭做網站、前郭網站設計、前郭網站制作等企業網站建設、網頁設計與制作、前郭企業網站模板建站服務,十多年前郭做網站經驗,不只是建網站,更提供有價值的思路和整體網絡服務。
1. 備份多臺 Server 的數據到一臺如果按照數據切分方向來講,那就是垂直切分。比如圖 2,業務 A、B、C、D 是之前拆分好的業務,現在需要把這些拆分好的業務匯總起來備份,那這種需求也很適用于多源復制架構。實現方法我大概描述下:業務 A、B、C、D 分別位于 4 臺 Server,每臺 Server 分別有一個數據庫來隔離前端的業務數據,那這樣,在從庫就能把四臺業務的數據全部匯總起來,而不需要做額外的操作。那沒有多源復制之前,要實現這類需求,只能在匯總機器上搭建多個 MySQL 實例,那這樣勢必會涉及到跨庫關聯的問題,不但性能急劇下降,管理多個實例也沒有單臺來的容易。
2. 用來聚合前端多個 Server 的分片數據。
同樣,按照數據切分方向來講,屬于水平切分。比如圖 3,按照年份拆分好的數據,要做一個匯總數據展現,那這種架構也非常合適。實現方法稍微復雜些:比如所有 Server 共享同一數據庫和表,一般為了開發極端透明,前端配置有分庫分表的中間件,比如愛可生的 DBLE。
3. 匯總并合并多個 Server 的數據
第三類和第一種場景類似。不一樣的是不僅僅是數據需要匯總到目標端,還得合并這些數據,這就比第一種來的相對復雜些。比如圖 4,那這樣的需求,是不是也適合多源復制呢?答案是 YES。那具體怎么做呢?
1、設置同步Master
每個同步服務器都必須設定一個唯一的編號,否則同步就不能正常運行了。接下來開始修改 my.cnf,增加以下幾行:
server-id = 1
log-bin
set-variable=binlog-ignore-db=mysql
然后在Master上增加一個賬號專門用于同步,如下:
mysqlGRANT REPLICATION SLAVE ON *.* TO rep@rep2 IDENTIFIED BY 'rep';
如果想要在Slave上有權限執行 "LOAD TABLE FROM MASTER" 或 "LOAD DATA FROM MASTER" 語句的話,必須授予全局的 FILE 和 SELECT 權限:
mysqlGRANT FILE,SELECT,REPLICATION SLAVE ON *.* TO rep@rep2 IDENTIFIED BY 'rep';
第三行表示不記錄數據庫mysql的更新日志,這就避免了Master上的權限設置等被同步到Slave上,如果對這方面沒有限制,就可以不設置這個參數。
接下來備份Master上的數據,首先執行如下SQL語句:
mysqlFLUSH TABLES WITH READ LOCK;
不要退出這個終端,否則這個鎖就不生效了;接著導出數據,可以直接打包壓縮數據文件,也可以使用mysqldump工具來做,推薦前者的方法,這樣更為快捷簡便。
root$cd /usr/local/mysql
1. 建立VPN內部網絡通信(這種方式快速一點)
2. 在需要同步的服務器上,建立連接服務器,取個名字,按照向導填寫驗證信息。
3. 在數據庫中直接使用連接服務器上的數據,數據表格式如:連接服務器名.數據庫名..表名
4. 在計劃任務中也可以把服務器表數據計劃更新到本地數據庫表里面
新聞標題:mysql怎么同步維護的簡單介紹
鏈接地址:http://www.yijiale78.com/article0/dodcooo.html
成都網站建設公司_創新互聯,為您提供網站改版、搜索引擎優化、定制開發、小程序開發、定制網站、服務器托管
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯