• my41_主从延迟大排查


    半同步复制

    主库执行

    INSTALL PLUGIN rpl_semi_sync_master SONAME 'semisync_master.so';

    SET GLOBAL rpl_semi_sync_master_enabled = 1;

    从库执行

    INSTALL PLUGIN rpl_semi_sync_slave SONAME 'semisync_slave.so';

    SET GLOBAL rpl_semi_sync_slave_enabled = 1;

    show status like 'Rpl_semi_sync_master_status';
    show status like 'Rpl_semi_sync_slave_status';

    配置文件

    主从数据库的my.cnf配置文件中添加:

    plugin-load = "rpl_semi_sync_master=semisync_master.so;rpl_semi_sync_slave=semisync_slave.so"
    rpl-semi-sync-master-enabled = 1
    rpl-semi-sync-slave-enabled = 1

    详细可以参考

    https://www.cnblogs.com/kevingrace/p/10228694.html

    复制并行度

    DATABASE 默认值,基于库的并行复制方式;LOGICAL_CLOCK:基于组提交的并行复制方式

    slave-parallel-type=LOGICAL_CLOCK
    slave-parallel-workers=16
    master_info_repository=TABLE
    relay_log_info_repository=TABLE
    relay_log_recovery=ON

    stop slave;

    set global slave_parallel_type='logical_clock';

    set global slave_parallel_workers=16;

    start slave;

    事务提交控制

    sync_binlog

    innodb_flush_log_at_trx_commit

    1,1最慢,提速可以配置为0,2

    sync_binlog=0

    innodb_flush_log_at_trx_commit=2

       

    innodb_io_capacity

    mysql> show variables like '%io_c%';
    +------------------------+-------+
    | Variable_name          | Value |
    +------------------------+-------+
    | innodb_io_capacity     | 200   |
    | innodb_io_capacity_max | 2000  |
    +------------------------+-------+
    2 rows in set, 1 warning (0.03 sec)
    


     可以调整到3000-5000,SSD可到8000

    关闭顺序提交

    mysql> show variables like '%order_co%';
    +----------------------+-------+
    | Variable_name        | Value |
    +----------------------+-------+
    | binlog_order_commits | ON    |
    +----------------------+-------+
    

    自动提交

    mysql自动提交的效率要远高于开发代码中的事务,批量删除时,可以让开发使用数据库的自动提交,关闭显式提交。

    也可以尝试另外一套组提交的逻辑

    binlog_group_commit_sync_delay=100
    binlog_group_commit_sync_no_delay_count=10000
    sync_binlog=1

  • 相关阅读:
    免费报表工具 积木报表(JiMuReport)的安装
    jeecgboot积木报表(jimuReport)SQL Server切换
    Machine Learning目录
    Pytorch05_torch安装(GPU版)
    Pytorch04_RNN结构
    Pytorch03_张量变化
    Pytorch02_GPU加速
    Pytorch01_通用结构
    怎么将本地文件上传到远程git仓库
    SpringCloud-微服务架构编码构建
  • 原文地址:https://www.cnblogs.com/perfei/p/11803830.html
Copyright © 2020-2023  润新知