美文网首页
MySQL:mysqlbinlog|mysql慢一列

MySQL:mysqlbinlog|mysql慢一列

作者: 重庆八怪 | 来源:发表于2021-08-17 11:36 被阅读0次

    一个小问题,5.7版本,关于这个问题还有一种可能如下
    https://www.jianshu.com/p/ee7a501b7f75
    但是本例不是,这里是MySQLD进程的SQL线程耗用CPU较多,还是第一次遇到这样的问题。以前一般不会慢在这里。


    一、问题由来

    mysqlbinlog|mysql发现比较慢出现的perf top和栈如下:


    image.png image.png image.png

    二、原因

    这里实际上是表没有主键使用hash scan 照成的,但是慢在hash key分配内存上,我们很容易模拟出这种问题的栈:


    image.png

    问题确认后就在表中增加主键即可。

    三、其他思考

    比如log_slave_updates/过滤等参数对于mysqlbinlog|mysql是否生效呢?

    1. log_slave_updates 是从库特有,主要用于处理SQL线程的属性
    2. replicate_do_ 是 Relay_log_info中的属性,属于channel属性,mysqlbinlog|mysql通道信息为临时建立的""
    3. binlog_do_是实例级别的属性,这个对每个线程都有效

    mysqlbinlog|mysql 不会受到1、2的影响,但是受到3的影响。当然任何apply event的方式没有改变,但是本线程是普通的线程,不是SQL线程,不带有SQL线程的属性。

    相关文章

      网友评论

          本文标题:MySQL:mysqlbinlog|mysql慢一列

          本文链接:https://www.haomeiwen.com/subject/kqgbbltx.html