注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

Oracle、MySQL资料及经验

.

 
 
 

日志

 
 

如何避免主从延迟  

2017-01-09 11:50:29|  分类: MySQL |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

1. 避免出现大事务 大事务改成小事务批量间隔执行。
2. 大事务避免不了时,会话级别binlog_format改为statement。
3. DDL、alter等操作放在业务空闲时执行。
4. 半同步复制,能解决少量延迟引起的问题。
5. 并行复制  5.7自带实现,5.7以下版本需要拆分出更多的库,再多线程并行复制。
6. 调整从库IO 
  ①从库牺牲安全性,改一些IO同步的参数,主库是写,对数据安全性较高,比如sync_binlog=1,innodb_flush_log_at_trx_commit = 1 ,而slave则不需要这么高的数据安全,完全可以修改sync_binlog=0、innodb_flush_log_at_trx_commit=0,甚至可以关闭binlog,来提高执行效率。
  ②从库使用更好的硬件,SAS盘换为SSD、flash卡,例如从库的同步卡在写binlog这一部分,典型的表现就是从库的系统IO等待很高,从库raid卡务必设置成write back的写策略。
7. 减小主库产生的日志量  binlog_row_image=minimal
8. 如果主库压力不大,把应用放主库上,从库只做实时性不高的查询操作,如统计。

延迟的监控,可通过pt-heart-beat来准确监控延迟值,及时发现查看。
  评论这张
 
阅读(81)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017