slave_pending_jobs_size_max参数

1、参数查看

  方法一:mysql> show variables like 'slave_pending_jobs_size_max';
  方法二:直接查看my.cnf文件slave_pending_jobs_size_max参数值

2、参数配置
  方法一:

    stop slave;
    set global slave_pending_jobs_size_max=250000000;
    start slave;

    重启后会丢失使用my.cnf参数
  方法二:直接修改my.cnf文件innodb_flush_log_at_trx_commit参数值,但需要重启实例生效

3、参数值意义

   在多线程复制时,在队列中Pending的事件所占用的最大内存,默认为16M,如果内存富余,或者延迟较大时,可以适当调大;注意这个值需要比主库的max_allowed_packet大。

4、外料
  经常在碰到备slave的同步复制SQL线程报如下错误时要根据情况进行调整:

  Last_Errno: 1864

  Slave_SQL_Running: No

  Last_Error: Cannot schedule event Write_rows, relay-log name ./mysql-relay-bin.001304, position 416228895 to Worker thread because its size 16777357 exceeds 16777216 of slave_pending_jobs_size_max.

  是因为slave_pending_jobs_size_max的大小小于当前需要执行事件所需的内存大小。


5、官网信息

猜你喜欢

转载自www.cnblogs.com/uphold/p/11409163.html
今日推荐