mysql的主從復(fù)制

最近想對Atlas進(jìn)行一次的大的改造, 其中涉及了一點主從復(fù)制的東西,之前Atlas通過定時建立連接方式來檢測主從db的存活,如果不能建立成功赂蕴,則會摘除該節(jié)點。這種方式比較簡單舶胀。其實可以考慮用更精細(xì)的控制概说, 心跳機制通過過檢測show slave status中seconds_Behind_Master、 Slave_IO_Running嚣伐、Slave_SQL_Runing三個字段來確定當(dāng)前主從同步的狀態(tài)以及Seconds_Behind_Master主從復(fù)制延遲糖赔, 當(dāng)Seconds_Behind_Master大于所設(shè)置的閾值時,就把該節(jié)點摘除點(其實這一塊和Atlas本身關(guān)系不大轩端,但是可以把其移入到Atlas中)

Mysql復(fù)制是通過將mysql的某一臺主機的數(shù)據(jù)復(fù)制到其他主機(簡稱slaves)上放典,并且在slaves上重新執(zhí)行一遍來實現(xiàn)。主服務(wù)器每次數(shù)據(jù)操作都會將更新記錄到二進(jìn)制日志文件,并維護(hù)文件的一個索引跟蹤日志循環(huán)奋构,slaves服務(wù)器通過獲取主服務(wù)器的二進(jìn)制日志來更新同步數(shù)據(jù)壳影。當(dāng)一個從服務(wù)器連接主服務(wù)器時,它通知主服務(wù)器從服務(wù)器的日志中讀取的最后一次成功更新的為止弥臼。注意:當(dāng)進(jìn)行主從復(fù)制時宴咧,所有對表的更新必須在主服務(wù)器上進(jìn)行,否則會造成沖突

1.1 mysql支持的復(fù)制類型

a. 基于語句的復(fù)制:在主服務(wù)器上執(zhí)行SQL語句径缅,在從服務(wù)器上執(zhí)行同樣的SQL語句(默認(rèn)采用的)掺栅,如果沒法精確復(fù)制,就會自動選擇基于行的復(fù)制
b. 基于行的復(fù)制:把改變的內(nèi)容復(fù)制過去纳猪,而不是把命令在從服務(wù)器執(zhí)行一遍氧卧,從mysql5.0開始支持
c. 混合類型,默認(rèn)采用基于語句的復(fù)制氏堤,一旦發(fā)現(xiàn)基于語句的無法精確的復(fù)制時沙绝,采用基于行的復(fù)制

1.2 復(fù)制如何工作

a. master服務(wù)器將數(shù)據(jù)更新記錄到二進(jìn)制日志文件中(主服務(wù)器上必須開啟log-bin)
b. slave將master的二進(jìn)制日志拷貝到它的中繼日志(relay log)
c.slave通過SQL線程從relay log中讀取二進(jìn)制日志,重新執(zhí)行一遍鼠锈,以改變自己的數(shù)據(jù)宿饱,整個過程如下所示

Paste_Image.png

a. master服務(wù)器上開啟二進(jìn)制日志,每個事務(wù)更新數(shù)據(jù)完成之前脚祟,master都會把數(shù)據(jù)變化記錄到二進(jìn)制日志文件中(串行寫入)
b. slave上配置change master to,將master的binary日志拷貝到它自己的中繼日志(I/O線程)
c. SQL線程從中繼日志中讀取事件强饮,并重放其中的事件更新slave的數(shù)據(jù)由桌,使得和master的數(shù)據(jù)一樣

MySQL主從復(fù)制幾個重要的啟動選項

log-slave-updates
log-slave-updates這個參數(shù)用來配置從服務(wù)器的更新是否寫入二進(jìn)制日志,這個選項默認(rèn)是不打開的邮丰,但是行您,如果這個從服務(wù)器B是服務(wù)器A的從服務(wù)器,同時還作為服務(wù)器C的主服務(wù)器剪廉,那么就需要開發(fā)這個選項娃循,這樣它的從服務(wù)器C才能獲得它的二進(jìn)制日志進(jìn)行同步操作
master-connect-retry
master-connect-retry這個參數(shù)是用來設(shè)置在和主服務(wù)器連接丟失的時候,重試的時間間隔斗蒋,默認(rèn)是60秒
read-only
read-only是用來限制普通用戶對從數(shù)據(jù)庫的更新操作捌斧,以確保從數(shù)據(jù)庫的安全性,不過如果是超級用戶依然可以對從數(shù)據(jù)庫進(jìn)行更新操作
slave-skip-errors
在復(fù)制過程中泉沾,由于各種的原因捞蚂,從服務(wù)器可能會遇到執(zhí)行BINLOG中的SQL出錯的情況,在默認(rèn)情況下跷究,服務(wù)器會停止復(fù)制進(jìn)程姓迅,不再進(jìn)行同步,等到用戶自行來處理。
Slave-skip-errors的作用就是用來定義復(fù)制過程中從服務(wù)器可以自動跳過的錯誤號丁存,當(dāng)復(fù)制過程中遇到定義的錯誤號肩杈,就可以自動跳過,直接執(zhí)行后面的SQL語句解寝。
–slave-skip-errors=[err1,err2,…….|ALL]
但必須注意的是扩然,啟動這個參數(shù),如果處理不當(dāng)编丘,很可能造成主從數(shù)據(jù)庫的數(shù)據(jù)不同步与学,在應(yīng)用中需要根據(jù)實際情況,如果對數(shù)據(jù)完整性要求不是很嚴(yán)格嘉抓,那么這個選項確實可以減輕維護(hù)的成本
replicate-ignore-db = mysql,test,information_schema //忽略同步的庫replicate-wild-do-table = demo.% //指定同步的表
replicate-rewrite-db=”olddb->newdb” 這個就很實用了 和可以 同步到不同名稱數(shù)據(jù)庫上 配合以上指定同步不同的表

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末索守,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子抑片,更是在濱河造成了極大的恐慌卵佛,老刑警劉巖,帶你破解...
    沈念sama閱讀 212,080評論 6 493
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件敞斋,死亡現(xiàn)場離奇詭異截汪,居然都是意外死亡,警方通過查閱死者的電腦和手機植捎,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,422評論 3 385
  • 文/潘曉璐 我一進(jìn)店門衙解,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人焰枢,你說我怎么就攤上這事蚓峦。” “怎么了济锄?”我有些...
    開封第一講書人閱讀 157,630評論 0 348
  • 文/不壞的土叔 我叫張陵暑椰,是天一觀的道長。 經(jīng)常有香客問我荐绝,道長一汽,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,554評論 1 284
  • 正文 為了忘掉前任低滩,我火速辦了婚禮召夹,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘恕沫。我一直安慰自己戳鹅,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 65,662評論 6 386
  • 文/花漫 我一把揭開白布昏兆。 她就那樣靜靜地躺著枫虏,像睡著了一般妇穴。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上隶债,一...
    開封第一講書人閱讀 49,856評論 1 290
  • 那天腾它,我揣著相機與錄音,去河邊找鬼死讹。 笑死瞒滴,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的赞警。 我是一名探鬼主播妓忍,決...
    沈念sama閱讀 39,014評論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼愧旦!你這毒婦竟也來了世剖?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,752評論 0 268
  • 序言:老撾萬榮一對情侶失蹤笤虫,失蹤者是張志新(化名)和其女友劉穎旁瘫,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體琼蚯,經(jīng)...
    沈念sama閱讀 44,212評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡酬凳,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,541評論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了遭庶。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片宁仔。...
    茶點故事閱讀 38,687評論 1 341
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖峦睡,靈堂內(nèi)的尸體忽然破棺而出翎苫,到底是詐尸還是另有隱情,我是刑警寧澤赐俗,帶...
    沈念sama閱讀 34,347評論 4 331
  • 正文 年R本政府宣布,位于F島的核電站弊知,受9級特大地震影響阻逮,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜秩彤,卻給世界環(huán)境...
    茶點故事閱讀 39,973評論 3 315
  • 文/蒙蒙 一叔扼、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧漫雷,春花似錦瓜富、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,777評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春价捧,著一層夾襖步出監(jiān)牢的瞬間丑念,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,006評論 1 266
  • 我被黑心中介騙來泰國打工结蟋, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留脯倚,地道東北人。 一個月前我還...
    沈念sama閱讀 46,406評論 2 360
  • 正文 我出身青樓嵌屎,卻偏偏與公主長得像推正,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子宝惰,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 43,576評論 2 349

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