欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

MySQL數(shù)據(jù)庫中怎么實現(xiàn)多主復(fù)制

這篇文章給大家介紹MySQL數(shù)據(jù)庫中怎么實現(xiàn)多主復(fù)制,內(nèi)容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。

創(chuàng)新互聯(lián)公司專業(yè)提供成都西信服務(wù)器托管服務(wù),為用戶提供五星數(shù)據(jù)中心、電信、雙線接入解決方案,用戶可自行在線購買成都西信服務(wù)器托管服務(wù),并享受7*24小時金牌售后服務(wù)。

MySQL 管理每個復(fù)制通道,都是通過一個Master_info類(sql/rpl_mi.h中定義),start_slave/change_master /stop_slave/show_slave/end_slave這些函數(shù)都需要傳入一個Master_info指針,這就給我們改造多Master提 供了很大的便利,基本只需要為每個復(fù)制通道傳入相應(yīng)的Master_info即可。
除了找到函數(shù)入口,還需要讓語法支持多主,否則CHANGE MASTER TO語句并不能支持多主。我修改了sql_yacc.yy,支持如下語法:
CHANGE MASTER ‘通道標識’ TO,START SLAVE ‘通道標識’,STOP SLAVE ‘通道標識’,SHOW SLAVE ‘通道標識’ STATUS。
這樣就可以支持多Master的語法了。
 另一個問題是怎么保存多個通道的信息,默認單通道的情況下,用master.info存Master的信息,用relay-log.info存復(fù)制應(yīng)用 的情況。所以存儲文件的名稱也要修改,我的方式是,master.info和relay-log.info在末尾加上通道標識后綴,例如名為”plx”的 通道,會存成master.info.plx和relay-log.info.plx。Relay Log因為有序列,所以增加”-通道標識”在序列前。
 還有一個問題就是,操作命令都是用通道標識來確定一個通道,那么肯定需要持久化正在用的通道名稱,以及建立通道后可以用通道名獲取相應(yīng)的 Master_info。于是我新建了一個MASTER_INFO_INDEX類(在sql/rpl_mi.h),里面包含一個通道標識和 Master_info指針的對應(yīng)HASH表,以及持久化需要的IO_CACHE,通過master.info.index這個文件來存已有的通道標識。
命名實例如下:

雙擊代碼全選
1 2 3 4 5 6 7 8 9 10 11-rw-rw—- 1 mysql mysql 10 Feb 13 20:40 master.info.index-rw-rw—- 1 mysql mysql 76 Feb 14 17:27 master.info.plx1 -rw-rw—- 1 mysql mysql 71 Feb 14 17:27 master.info.plx2 -rw-rw—- 1 mysql mysql 90 Feb 14 17:25 relay-log.info.plx1 -rw-rw—- 1 mysql mysql 90 Feb 14 17:27 relay-log.info.plx2 -rw-rw—- 1 mysql mysql 160 Feb 14 10:16 mysql-relay-bin-plx1.000011 -rw-rw—- 1 mysql mysql 83765425 Feb 14 17:27 mysql-relay-bin-plx1.000012 -rw-rw—- 1 mysql mysql 106 Feb 14 10:16 mysql-relay-bin-plx1.index-rw-rw—- 1 mysql mysql 160 Feb 14 10:16 mysql-relay-bin-plx2.000014 -rw-rw—- 1 mysql mysql 83455792 Feb 14 17:27 mysql-relay-bin-plx2.000015 -rw-rw—- 1 mysql mysql 106 Feb 14 10:16 mysql-relay-bin-plx2.index

下載Patch在此:http://bugs.mysql.com/file.php?id=18020

有了多Master以后我們可以做什么呢?下面給兩個應(yīng)用場景。
 第一個是一備多的備份。因為我們采用的分庫策略,使我們一個集群會有很多個實例,每個實例里面有幾個Schema,但是肯定不會重復(fù)。例如第一個實例是 1~3號Schema。第二個實例就是4~6號Schema,所以binlog應(yīng)用到一起并不會沖突數(shù)據(jù)。這是我們測試的在線備份方案。

 第二個是跨機房的HA。為了容災(zāi)或者加速,很多公司都采用在不同機房部署數(shù)據(jù)庫的方式,所以就涉及到數(shù)據(jù)同步。為了保證每個機房產(chǎn)生的數(shù)據(jù)不沖突,一般 來說我們采用的是auto_increment_increment,auto_increment_offset這兩個參數(shù),可以控制步進。例如雙 MAster,我們會配置主庫是奇數(shù)序列的ID,備庫是偶數(shù)序列的ID,這樣切換時就算有少量binlog還未應(yīng)用,也不會導(dǎo)致數(shù)據(jù)沖突??鐧C房以后,例 如兩個機房都有雙Master,兩個機房之間數(shù)據(jù)又需要同步,以前需要借助第三方腳本或者程序,有了多Master,按如下方式搭建,設(shè)置步進為4,就可 以保證每個機房有雙MAster HA,機房之間數(shù)據(jù)又可以同步。

已知缺陷:
1. 我還沒做reset slave ‘通道標識’命令,就是復(fù)制通道還不能重置,只能CHANGE MASTER來改,不是做不了,因為暫時我們沒這個需求,等穩(wěn)定了再考慮這個細節(jié)。
 2. 數(shù)據(jù)沖突沒有檢測。這個是無法解決的,我只是簡單的調(diào)用了啟動Slave的函數(shù)來啟動多個復(fù)制線程,binlog取到本地應(yīng)用,有數(shù)據(jù)沖突是不能事先檢測 的,執(zhí)行到了才會報出來,可以設(shè)置skip-slave-error,對全局有效。其他復(fù)制相關(guān)的也是全局有效。

關(guān)于MySQL數(shù)據(jù)庫中怎么實現(xiàn)多主復(fù)制就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

網(wǎng)站名稱:MySQL數(shù)據(jù)庫中怎么實現(xiàn)多主復(fù)制
分享路徑:http://chinadenli.net/article4/gpheoe.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站導(dǎo)航、網(wǎng)站設(shè)計公司域名注冊、品牌網(wǎng)站建設(shè)、網(wǎng)站排名靜態(tài)網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站托管運營
国产乱淫av一区二区三区| 亚洲av又爽又色又色| 成人精品国产亚洲av久久| 日本精品最新字幕视频播放| 区一区二区三中文字幕| 国产情侣激情在线对白| 视频在线免费观看你懂的| 国产超薄黑色肉色丝袜| 男人和女人草逼免费视频| 国产一区二区久久综合| 亚洲专区中文字幕在线| 翘臀少妇成人一区二区| 经典欧美熟女激情综合网| 人妻露脸一区二区三区| 91后入中出内射在线| 色婷婷成人精品综合一区| 日韩精品视频免费观看| 中文字幕久久精品亚洲乱码| 大尺度剧情国产在线视频| 老司机精品视频在线免费看| 男人大臿蕉香蕉大视频| 日本免费熟女一区二区三区| 国产又粗又爽又猛又黄的| 色婷婷在线精品国自产拍| 欧美日韩国产自拍亚洲| 东北女人的逼操的舒服吗| 午夜精品久久久免费视频| 蜜桃av人妻精品一区二区三区| 日韩精品中文字幕在线视频| 五月婷婷六月丁香在线观看 | 久久re6热在线视频| 亚洲中文在线观看小视频| 亚洲综合天堂一二三区| 亚洲婷婷开心色四房播播| 经典欧美熟女激情综合网| 中文字幕高清不卡一区| 欧美日韩在线视频一区| 丝袜av一区二区三区四区五区| 午夜福利在线观看免费| 麻豆果冻传媒一二三区| 欧美小黄片在线一级观看|