Heim >Datenbank >MySQL-Tutorial >mysql5.6 半同步复制 semi_sync_replication筹建

mysql5.6 半同步复制 semi_sync_replication筹建

WBOY
WBOYOriginal
2016-06-07 16:15:471067Durchsuche

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>
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn