日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

mysql data transfer_MySQL主从同步加速 Transfer-- FAQ

發布時間:2025/3/12 数据库 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 mysql data transfer_MySQL主从同步加速 Transfer-- FAQ 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Q: Transfer是什么

A: 是一個解決MySQL原生主從同步延遲的方案。 Transfer本身是一個在MySQL源碼上打的patch,可以用于當Slave,也可以用于當第三方工具,將Master的數據同步發給Slave。 利用多線程實現主從無延遲。

Q: Transfer目前的發布形式?

A: Transfer會在今年內開源,目前的發布形式是可執行的mysqld文件。 有兩個版本,分別是官方的5.1.48 和 Percona Server 5.5.18.

Transfer.MySQL.5.1.48 下載地址?? md5: 4d49f8d90e8bee8c870c1ef3a38cc979

Transfer.Percona.5.5.18 下載地址? md5: f4783971c38008e0780cca44a97368eb

最后更新日期 2012.9.12

(下載后先對一下md5 ^_^)

Q: Transfer是否會改變主庫上的binlog在從庫上的執行順序,導致數據不一致?

A:會改變執行順序。但Transfer保證對于相同記錄的操作都是按順序的,因此不會導致數據不一致。

Q: 我使用了transfer模式,但是transfer的錯誤日志為什么一直在輸出 "trans->inner_events 3",而從庫上沒有更新?

A: Transfer啟動前需要保證Transfer里面要有與slave上相同的表和表結構,請先確認下,若無,則需要從slave把schema都dump 過去。

Q: 我用的是mysql5.1.48版本,我在transfer里面建表的時候會core dump

A: 若你用的是innodb_plugin版本,還需要替換ha_innodb_plugin.so.0.0.0 (lib/mysql/plugin 目錄下) 下載地址

Q: 需要配置上做什么改變

Q: 對主從庫有什么配置限制

A:有以下限制

1) 主庫的binlog格式必須是row

2) 主庫的表必須有primary key

3) 從庫的 max_allowed_packet建議改為1G。主庫的單個事務大小不能超過max_allowed_packet

Q: 我覆蓋了mysqld后,Transfer整個實例起不來?

A:先確認一下mysqld是否有可執行權限, 若無,執行 chmod 755 mysqld.

Q: 我用slave模式,能夠隨時替換回原來的版本嗎?

A: 如果要隨時替換回原來的版本,可以把增加的參數都加上loose_前綴,這樣替換mysqld,重啟,start slave,就可以了。

Q: 什么情況下不適合用Transfer?

A: 其實一個簡單的原則,如果你的原生從庫不延遲,就不需要用(貌似是廢話).

Q: 我的測試場景下transfer的TPS比原生的還慢?感謝 @-周博

A:? 若是從空表開始壓力,并且你的BP開很大,io性能很好,更新語句簡單,qps很高(這個case里是12w/s),此時單線程完全能夠執行得飛快。Transfer模型中的生產+消費環節和多線程爭用反而會導致性能下降(在這個case里面是6w/s)。

在實際線上場景中,更多的情況是io瓶頸,此時才能利用好多線程的效果,Transfer的效果才能體現出來。在我們一個線上場景的測試中是原生500/s,用Transfer后6000/s.

PS: 個人比較建議用源碼安裝,Percona Server的 源碼地址

我的cmake參數

CFLAGS="-O3 -g -fno-exceptions -static-libgcc -fno-omit-frame-pointer -fno-strict-aliasing"

CXX=gcc

CXXFLAGS="-O3 -g -fno-exceptions -fno-rtti -static-libgcc -fno-omit-frame-pointer -fno-strict-aliasing"

export CFLAGS CXX CXXFLAGS

#cmake . -DCMAKE_INSTALL_PREFIX=/home/dingqi.lxb/mysql5 -DEXTRA_CHARSETS=all

cmake . \

-DCMAKE_BUILD_TYPE:STRING=Release???????????? \

-DSYSCONFDIR:PATH=/home/mysql5??????????? \

-DCMAKE_INSTALL_PREFIX:PATH=/home/mysql5? \

-DENABLED_PROFILING:BOOL=ON?????????????????? \

-DENABLE_DEBUG_SYNC:BOOL=OFF????????????????? \

-DMYSQL_DATADIR:PATH=/home/dingqi.lxb/mysql5/data??? \

-DMYSQL_MAINTAINER_MODE:BOOL=OFF????????????? \

-DWITH_EXTRA_CHARSETS:STRING=all? \

-DWITH_BIG_TABLES:BOOL=ON \

-DWITH_FAST_MUTEXES:BOOL=ON \

-DENABLE-PROFILING:BOOL=ON \

-DWITH_SSL:STRING=bundled???????????????????? \

-DWITH_UNIT_TESTS:BOOL=OFF??????????????????? \

-DWITH_ZLIB:STRING=bundled??????????????????? \

-DWITH_PARTITION_STORAGE_ENGINE:BOOL=ON?????? \

-DWITH_PLUGINS=heap,csv,partition,innodb_plugin,myisam \

-DDEFAULT_CHARSET=gbk -DDEFAULT_COLLATION=gbk_chinese_ci -DWITH_EXTRA_CHARSETS=ALL \

-DENABLED_ASSEMBLER:BOOL=ON?????????????????? \

-DENABLED_LOCAL_INFILE:BOOL=ON??????????????? \

-DENABLED_THREAD_SAFE_CLIENT:BOOL=ON????????? \

-DENABLED_EMBEDDED_SERVER:BOOL=OFF???????????? \

-DWITH_CLIENT_LDFLAGS:STRING=all-static???????????????? \

-DINSTALL_LAYOUT:STRING=STANDALONE??????????? \

? -DCOMMUNITY_BUILD:BOOL=ON;

總結

以上是生活随笔為你收集整理的mysql data transfer_MySQL主从同步加速 Transfer-- FAQ的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。