mysql備份和高可用(經典方案)

    本人不是mysql磚家,只是普通的管理員,本着對事物的完美追求,最大限度地保障系統的安全和穩定,從數據完整和服務持續性考慮,和大家分享下,我目前採用的方案。


    mysqldump可以實現完全備份,但要鎖表,mysqlbinlog可以實現某故障點之前的恢復。第三方工具xtrabackup可以實現完全備份和增量備份,是在線熱備工具(innodb行鎖不影響讀寫,myisam只讀鎖,影響寫)。可以結合mysqlbinlog和xtrabackup實現靈活完善的備份方案。

    

    mysql高可用,採用lvs+mha實現,1主2從的架構;mha監控這三臺數據庫的主從和是否可用狀態。當主數據庫發生故障,mha會監控節點,自動切換到指定的從數據庫;指定的從數據庫變成主,主變成指定故障切換的從。故障切換過程中,mha會做一系列動作,避免複製和一致性問題,從而保證數據的完整性。此架構沒有做讀寫分離,讀寫負擔都在主數據庫上面,從只是起到高可用和數據備份的作用。結合lvs的keepalive可以實現在訪問ip不變的情況下,做無縫切換。對於用戶來說,雖然主數據庫已經發生故障,但訪問的ip沒變,在後臺已經從主數據庫,切換到指定從,整個過程只要3-7秒的時間。


    如果結合奇虎的atlas實現主從讀寫分離,1主寫,多從讀,將是一個支持高性能高併發高可用,數據完整的mysql經典架構。  


轉載~~~~  http://lipengfei666666.blog.51cto.com/6384154/1613937

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章