Home >Database >Mysql Tutorial >mysql5.6 半同步复制 semi_sync_replication筹建
mysql5.6 半同步复制 semi_sync_replication搭建 ?????? ????????? 最近服务器偶尔出现主从复制延时问题,今天看到官网在mysql5.5之后添加进了google的半同步复制插件,特此参考官网为windows服务器搭建了该环境,环境搭建完毕,可以运行,持续测试中------ w
mysql5.6 半同步复制 semi_sync_replication搭建??????
????????? 最近服务器偶尔出现主从复制延时问题,今天看到官网在mysql5.5之后添加进了google的半同步复制插件,特此参考官网为windows服务器搭建了该环境,环境搭建完毕,可以运行,持续测试中------
windows server 2008
mysql5.6
<code class="literal">have_dynamic_loading <span>采用</span>show VARIABLES LIKE '<code class="literal">have_dynamic_loading
';查看是否支持动态加载 yes
然后加载插件linux下后缀名为so,官网文档是以linux为例
主
<span class="notranslate"><code><strong class="userinput">INSTALL PLUGIN rpl_semi_sync_master SONAME 'semisync_master.dll';</strong></code></span>
从
<span class="notranslate"><code><strong class="userinput">INSTALL PLUGIN rpl_semi_sync_slave SONAME 'semisync_slave.dll'; </strong></code></span> <span class="notranslate"><strong><code class="literal">SHOW PLUGINS</code> 可以查看安装的插件 对上述安装的进行查看。</strong> </span>主 <span class="notranslate"><span class="notranslate"><code><strong class="userinput">SET GLOBAL rpl_semi_sync_master_enabled = 1; 1开启 0关闭</strong></code></span> <span class="notranslate"><code><strong class="userinput">SET GLOBAL rpl_semi_sync_master_timeout = <em class="replaceable">10000</em> ; 毫秒单位 10秒该参数主服务器 等待确认消息10秒后,不再等待,变为异步方式。 从 </strong></code></span></span><span class="notranslate"><span class="notranslate"><code><strong class="userinput"><span class="notranslate"><code><strong class="userinput">SET GLOBAL rpl_semi_sync_slave_enabled = 1;</strong></code></span></strong></code></span></span> <span class="notranslate"><code><strong class="userinput">STOP SLAVE IO_THREAD; START SLAVE IO_THREAD; 已经配置完毕,下面查看状态 1 SHOW VARIABLES LIKE 'rpl_semi_sync%'; </strong></code></span><span class="notranslate"><code><strong class="userinput"><span class="notranslate"><code><strong class="userinput">主</strong></code></span> 显示四个配置参数 </strong></code></span><span class="notranslate"><code><strong class="userinput"> 2 </strong></code></span><span class="notranslate"><code><strong class="userinput">SHOW STATUS LIKE 'Rpl_semi_sync%'; </strong></code></span><span class="notranslate"><code><strong class="userinput"><span class="notranslate"><code><strong class="userinput">记录支持slave连接的个数 </strong></code></span><span class="notranslate"><code><strong class="userinput">Rpl_semi_sync_master_clients? ????????????? </strong></code></span><span class="notranslate"><code><strong class="userinput">master 等待slave 回复的平均等待时间。 单位毫秒. Rpl_semi_sync_master_net_avg_wait_time??? ? </strong></code></span><span class="notranslate"><code><strong class="userinput">master 总的等待时间。 Rpl_semi_sync_master_net_wait_time???? ???? </strong></code></span><span class="notranslate"><code><strong class="userinput">master 等待slave 回复的的总的等待次数 Rpl_semi_sync_master_net_waits?????? ?????? </strong></code></span><span class="notranslate"><code><strong class="userinput">master 关闭半同步复制的次数。 Rpl_semi_sync_master_no_times??? ?????????? </strong></code></span><span class="notranslate"><code><strong class="userinput">master 没有收到slave的回复而提交的次数,(应该可以理解为master 等待超时的次数) Rpl_semi_sync_master_no_tx???????????????? </strong></code></span><span class="notranslate"><code><strong class="userinput">标记master现在是否是半同步复制状态 Rpl_semi_sync_master_status?????????????? </strong></code></span></strong></code></span><span class="notranslate"><code><strong class="userinput"><span class="notranslate"><code><strong class="userinput">时间函数未正常工作的次数 Rpl_semi_sync_master_timefunc_failures??? </strong></code></span><span class="notranslate"><code><strong class="userinput">master 花在每个事务上的平均等待时间。 Rpl_semi_sync_master_tx_avg_wait_time????? </strong></code></span><span class="notranslate"><code><strong class="userinput">master 总的等待次数。 Rpl_semi_sync_master_tx_wait_time???????? </strong></code></span></strong></code></span><span class="notranslate"><code><strong class="userinput"><span class="notranslate"><code><strong class="userinput">事务等待备库响应的总次数 Rpl_semi_sync_master_tx_waits????????????? </strong></code></span></strong></code></span><span class="notranslate"><code><strong class="userinput"><span class="notranslate"><code><strong class="userinput">改变当前等待最小二进制日志的次数 Rpl_semi_sync_master_wait_pos_backtraverse </strong></code></span><span class="notranslate"><code><strong class="userinput">当前有多少个session 因为slave 的回复而造成等待。 Rpl_semi_sync_master_wait_sessions???????? </strong></code></span><span class="notranslate"><code><strong class="userinput">master 成功接收到slave的回复的次数。 Rpl_semi_sync_master_yes_tx??????????????? 从 </strong></code></span><span class="notranslate"><code><strong class="userinput">标记slave 是否在半同步状态。 Rpl_semi_sync_slave_status? on</strong></code></span> </strong></code></span><span class="notranslate"><code><strong class="userinput"> 该状态说明已经执行监视成功! 其它参数配置还在研究中,后期进行更新。 </strong></code></span>