服务器之家:专注于服务器技术及软件下载分享
分类导航

Mysql|Sql Server|Oracle|Redis|MongoDB|PostgreSQL|Sqlite|DB2|mariadb|Access|数据库技术|

服务器之家 - 数据库 - Mysql - 减少mysql主从数据同步延迟问题的详解

减少mysql主从数据同步延迟问题的详解

2019-12-30 15:41MYSQL教程网 Mysql

本篇文章是对减少mysql主从数据同步延迟的问题进行了详细的分析介绍,需要的朋友参考下

基于局域网的master/slave机制在通常情况下已经可以满足'实时'备份的要求了。如果延迟比较大,就先确认以下几个因素: 
1. 网络延迟
2. master负载
3. slave负载

一般的做法是,使用多台slave来分摊读请求,再从这些slave中取一台专用的服务器,只作为备份用,不进行其他任何操作,就能相对最大限度地达到'实时'的要求了

另外,再介绍2个可以减少延迟的参数

  –slave-net-timeout=seconds
  参数含义:当slave从主数据库读取log数据失败后,等待多久重新建立连接并获取数据

 slave_net_timeout单位为秒 默认设置为 3600秒 
| slave_net_timeout               | 3600 

  –master-connect-retry=seconds
参数含义:当重新建立主从连接时,如果连接建立失败,间隔多久后重试。

   master-connect-retry单位为秒 默认设置为 60秒

通常配置以上2个参数可以减少网络问题导致的主从数据同步延迟

一般网络问题的错误是:

070401 16:16:55 [ERROR] Error reading packet from server: Lost connection to MySQL server during query (server_errno=2013)
070401 16:16:55 [ERROR] Slave I/O thread: Failed reading log event, reconnecting to retry, log ‘mysql_master-bin.000134′ position 115817861

延伸 · 阅读

精彩推荐