zoukankan      html  css  js  c++  java
  • mysql主从延时临时解决办法

    主从延时临时解决办法:
    主从延迟严重的原因很多,其中有以下原因:
    一、由于无主键大表的delete 和update导致。
    mysql  主从复制时。如果表上没有主键。会导致update和delete操作 在从库全表扫描。或者扫描最大索引。
    在对没有主键的表进行批量的delete和update操作时候,此时从库会阻塞在delete、update语句。(对于几十万记录的表,每秒仅能删除10条记录左右。)。
    如何临时去解决问题呢?
    1、开启从节点复制单线程: set global slave_parallel_workers=1。(可能需要重启从mysql)
    2、开启复制幂等模式set global   slave_exec_mode =  IDEMPOTENT 。
    3、在从库set session sql_log_bin=OFF;stop slave; 手动指定当前的delete、update  。如果是delete from 没有where条件,直接truncate。
    (注意。在执行阻塞的delete update操作的时候回阻塞住stop slave。这时候可以直接kill sql_thread进程。)
    4、跳过所有无主键表的批量delete,update之后。 set global slave_exec_mode = STRICT;stop slave ;start slave; 创建这些表的主键。
     
    二、主库写入压力大,从库跟不上:
    1、临时调整从库参数:
    set global sync_binlog=0;
    set global innodb_flush_log_at_trx_commit=0;
    适当调大slave_parallel_workers (对于5.6及5.6以下没啥用处。)
    适当调大 sync_relay_log (默认为10000,即每10000次sync_relay_log事件会刷新到磁盘。为0则表示不刷新,交由OS的cache控制)
    适当调大 sync_relay_log_info (如果relay_log_info_repository设置为TABLE。则不用管)
    (如果是非GTID模式下: set global log_slave_updates=OFF 或者 set global binlog_format=statement)
    2、stop slave;start slave
     
     
  • 相关阅读:
    UVALive 4329 Ping pong
    面试题——设计一个程序:运行报错Stack Overflow Error
    MongoDB 主从复制小实验
    我总结的18个非常好用的vim指令
    php性能优化
    error LNK2019: unresolved external symbol / error LNK2001: 无法解析的外部符号
    CopyU!v2 已经收录到腾讯软件管家!
    HDU 1498 50 years, 50 colors (行列匹配+最小顶点覆盖)
    汉语-词语-庸俗:百科
    汉语-成语-见笑大方:百科
  • 原文地址:https://www.cnblogs.com/vansky/p/9408590.html
Copyright © 2011-2022 走看看