MySQL-Transfer2.3发布

Transfer 2.3发布,下载地址

 

此版本除了升级based版本外

*优化了无索引表的同步性能

*优化了slave模式下超大事务内存消耗问题

*Transfer模式相关的功能改动较多

*修复transfer模式下超大事务可能同步失败的bug

 

由于有两个公司的同学在使用5.5.31,因此该版本的改动也同时backport到5.5.31,下载地址

版本说明

1、     基于版本 Percona 5.5.34,简单用法是先安装好官方或PS版5534,然后替换为transfer的mysqld

若使用的是slave模式,直接替换无需修改参数。

 

FAQ:若直接替换后启动如下的错误 "Error message file '/mysql/share/english/errmsg.sys' had only ...",则你需要下载此文件 替换到报错位置。

 

2、    新增参数

transfer_parallel_on
说明:1) on—多线程复制, off—单线程 默认值on
      2) 只能在stop slave状态下修改

transfer_mode

说明:1)on – transfer模式, off—slave模式 默认值 off

      2) 只读参数

transfer_slave_*
说明:1) 这四个参数说明见2.2版本的说明,仅在transfer模式下有效
     2) 只能在stop slave状态下修改
     3)transfer_slave_password参数无论设置为何值,都显示为****

============================

历史版本改动

   2.2

新增观察参数 Com_ts_*

在压测过程中,可使用如下命令观察

mysqladmin --socket=run/mysql.sock -uroot   extended-status --relative --sleep=1 | grep  Com_ts

                   得到如下图的示例

 

         说明:

1)       Com_ts_serial_number : 串行执行的数目。表示未使用上多线程的事务。正常应该为0,出现非0最可能的因素是出现了statement格式的语句,比如DDL,或者主库的binlog format错误。

2)       Com_ts_thread_0 :第0号线程的执行事务数。正常应该为0。出现非0的最可能因素是数据库中存在无主键和unique key的表。

3)       Com_ts_thread_N :第1到15号线程为正常的transfer worker。

上图是master做随机插入。前面几个线程更加集中是合理的。需要关注的是前面几个线程比较均匀,就达到了多线程同步的目的。

 

3、  新增配置参数 transfer_verbos

 

         说明:此参数默认值为OFF。上面说到Com_ts_serial_number正常应为0。若非0,可以通过将transfer_verbos改为ON,会在errlog中输出导致串行执行的语句。

http://dinglin.iteye.com/blog/1983541

posted on 2014-05-15 23:21  chen110xi  阅读(243)  评论(0编辑  收藏  举报