0

0

MySQL主从同步加速 Transfer-- FAQ

php中文网

php中文网

发布时间:2016-06-07 17:58:59

|

1452人浏览过

|

来源于php中文网

原创

Q: Transfer是什么 A: 是一个解决MySQL原生主从同步延迟的方案。 Transfer本身是一个在MySQL源码上打的patch,可以用于当Slave,也可以用于当第三方工具,将Master的数据同步发给Slave。 利用多线程实现主从无延迟。 Q: Transfer目前的发布形式? A: Transfer

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: 需要配置上做什么改变

A:请参考此文 http://www.linuxidc.com/Linux/2012-09/70627.htm



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;

相关专题

更多
高德地图升级方法汇总
高德地图升级方法汇总

本专题整合了高德地图升级相关教程,阅读专题下面的文章了解更多详细内容。

4

2026.01.16

全民K歌得高分教程大全
全民K歌得高分教程大全

本专题整合了全民K歌得高分技巧汇总,阅读专题下面的文章了解更多详细内容。

3

2026.01.16

C++ 单元测试与代码质量保障
C++ 单元测试与代码质量保障

本专题系统讲解 C++ 在单元测试与代码质量保障方面的实战方法,包括测试驱动开发理念、Google Test/Google Mock 的使用、测试用例设计、边界条件验证、持续集成中的自动化测试流程,以及常见代码质量问题的发现与修复。通过工程化示例,帮助开发者建立 可测试、可维护、高质量的 C++ 项目体系。

10

2026.01.16

java数据库连接教程大全
java数据库连接教程大全

本专题整合了java数据库连接相关教程,阅读专题下面的文章了解更多详细内容。

33

2026.01.15

Java音频处理教程汇总
Java音频处理教程汇总

本专题整合了java音频处理教程大全,阅读专题下面的文章了解更多详细内容。

15

2026.01.15

windows查看wifi密码教程大全
windows查看wifi密码教程大全

本专题整合了windows查看wifi密码教程大全,阅读专题下面的文章了解更多详细内容。

42

2026.01.15

浏览器缓存清理方法汇总
浏览器缓存清理方法汇总

本专题整合了浏览器缓存清理教程汇总,阅读专题下面的文章了解更多详细内容。

7

2026.01.15

ps图片相关教程汇总
ps图片相关教程汇总

本专题整合了ps图片设置相关教程合集,阅读专题下面的文章了解更多详细内容。

9

2026.01.15

ppt一键生成相关合集
ppt一键生成相关合集

本专题整合了ppt一键生成相关教程汇总,阅读专题下面的的文章了解更多详细内容。

6

2026.01.15

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
MySQL 教程
MySQL 教程

共48课时 | 1.8万人学习

MySQL 初学入门(mosh老师)
MySQL 初学入门(mosh老师)

共3课时 | 0.3万人学习

简单聊聊mysql8与网络通信
简单聊聊mysql8与网络通信

共1课时 | 793人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号