亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

怎樣解決MySQL數據庫主從復制延遲的問題

系統 2146 0

????? mysql replication 中主從延遲是一個比較常見的問題,請看前期一篇博文: 怎樣解決MySQL數據庫主從復制延遲的問題 。根據目前有些公司使用的方案,最近測試了兩個,其中之一是阿里的relay fetch ,業績說法數據預熱,當然也有其他開源類似開源工具,目前諸如 mk-slave-prefetch replication-prefetch 等,感興趣可以去看看。整理的文檔主要是參考了官方的 《relay fetch 讀取本地binlog 進行備庫預熱》 ,有些圖片直接引用,還有文字,與官方不同的是安裝過程中出現的問題及解決方式,歸納如下:


基本思路原理 ?

備庫sql線程執行更新之前,預先將相應的數據加載到內存中,并不能提高sql_thread線程執行sql的能力,也不能加快io_thread線程讀取日志的速度。

?

?

限制

? 1 目前僅支持主庫binlog ROW模式

? 2 表需要有主鍵或唯一索引

? 3 忽略test和mysql數據庫

? 4 如果數據庫中存在類似tbname_1、tbname_2這樣命名的多個表,但其表模式卻不相同時,請加上-t選項,例如:tb_1 tb_2 tb_3這樣命名的三個表,默認情況下,被認為是同樣模式的表,這個特點是淘寶為了適應他們自己的數據庫環境

? 5 默認最多支持10000個用戶表,如果學員支持更多表,可以通過修改宏MAX_TABLE_NUM來進行調整。

?

獲取源碼?

??安裝svn客戶端從下列地址獲取源碼:

svn checkout http://relay-fetch.googlecode.com/svn/trunk/

安裝編譯:

make

make的時候需要根據mysql安裝環境修改Makefile配置文件,relay-fetch依賴mysql的lib庫文件等,gcc編譯的時候指定,如下紅色標示部分:

#locate your libmysqlclient_r.so

?

all:

??????? gcc -g -O0 -Wall-o relayfetch relayfetch.c -I/usr/local/mysql/include/ -L/usr/local/mysql/lib -lmysqlclient_r -lpthread

?

clean:

??????? rm -rf *.orelayfetch

?

32位系統安裝有warning ,如下

relayfetch.c: In function ‘daemon_rf’:

relayfetch.c:2599: warning: format ‘%lu’ expects type ‘longunsigned int’, but argument 4 has type ‘long long unsigned int’

relayfetch.c:2599: warning: format ‘%lu’ expects type ‘longunsigned int’, but argument 4 has type ‘long long unsigned int’

不是錯誤error,沒有太多影響

安裝完畢,在安裝目錄下運行./relayfetch –h,了解一下relayfetch 常用參數,如果報如下錯誤error while loading shared libraries: libmysqlclient.so.16/18:cannot open shared object file

應該是mysql的lib庫文件引用問題,建立如下類似軟鏈接

32位

ln -s /usr/local/mysql/lib/libmysqlclient.so.18? /usr/lib/

?

64位

ln -s /usr/local/mysql/lib/libmysqlclient.so.18? /usr/lib64/

?

使用

運行: ./relayfetch -h來獲取選項

主要選項包括:
-d debug
-D 后臺運行
-p 密碼
-u 用戶名,請以root用戶運行
-P mysqld端口號
-s 整數,單位為M,當read線程超過sql線程position這么多字節數時,會等待sql線程,默認為1M
-S mysql sock文件路徑
-n worker線程數目。默認為5
-a 當seconds_behind_master大于這個值時,會喚醒relayfetch,默認為1s
-t 當使用該選項時,表明不使用分表規則(例如,表name_1 和表name_2會被視為同一類表)

我們可以通過端口號來運行

./relayfetch-uroot -t -P3306

或者通過sock來運行

./relayfetch-S /u01/mysql/run/mysql.sock -uroot

測試效果

?

?這個效果不明顯,可能機器原因(本人測試256內存虛擬機)。請參考官方測試吧

?

?

怎樣解決MySQL數據庫主從復制延遲的問題


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 99热久久精里都是精品66 | 日韩亚洲人成在线综合 | 一级一级毛片 | a级毛片在线视频免费观看 a级免费网站 | 久久久久久久99精品免费 | 久久一区二区免费播放 | 韩国成人毛片aaa黄 韩国高清不卡一区二区 | 一区二区三区毛片免费 | 麻豆va一区二区三区久久浪 | 色综合综合色综合色综合 | 日韩欧美一区二区三区在线 | 婷婷国产天堂久久综合五月 | 亚洲国产精品综合久久久 | 国产123区 | 日本国产精品 | 国产亚洲精品一区二区三区 | 免费看在线爱爱小视频 | 美女操穴| 最近中文国语字幕在线播放视频 | 成人xxx免费视频播放 | 国产精品久久精品牛牛影视 | 国产女人嗷嗷叫 | 看a网址 | 四虎影院最新网址 | 狠狠色噜噜狠狠狠狠69 | 国产精品久久久久秋霞影视 | 欧美久久久久久久一区二区三区 | 日本一区二区三区四区五区 | 亚洲精品一区二区卡 | 亚洲精品网址 | 香蕉依人 | 99精品国产久热在线观看66 | 曰本人一级毛片免费完整视频 | 亚洲天堂777| 久久国产精品麻豆映画 | 色网站欧美 | 欧美国产一区二区二区 | 欧美性另类69xxxx极品 | 日韩精品成人在线 | 日本一区毛片免费观看 | 高清成人综合 |