Mysql 1864 主从错误解决方法

 更新时间:2016年08月25日 09:15:56   作者:岁伏  
本文给大家带来了Mysql 1864 主从错误解决方法,本文介绍的非常详细,具有参考借鉴价值,需要的朋友可以参考下

从字面意思看了一下是因为slave_pending_jobs_size_max默认值为16777216(16MB),但是slave接收到的slave_pending_jobs_size_max为17085453(17M);

解决方案

从库执行如下SQL

mysql>stop slave;
mysql>set global slave_pending_jobs_size_max=20000000;
mysql> start slave;

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

这个值要比主库的max_allowed_packet大

故障模拟:

从库设置

mysql> set global slave_parallel_workers=4;
mysql> show variables like 'slave_parallel_workers';
+------------------------+-------+
| Variable_name | Value |
+------------------------+-------+
|slave_parallel_workers | 4 |
+------------------------+-------+
1 row in set (0.00sec)
mysql>set global slave_pending_jobs_size_max=1024;
mysql> show variables like 'slave_pend%';
+-----------------------------+-------+
| Variable_name | Value |
+-----------------------------+-------+
|slave_pending_jobs_size_max | 1024 |
+-----------------------------+-------+
1 row in set (0.00sec)

主库操作:

mysql> update erp_mkpf set usnam='测试1864错误';
ERROR 1197 (HY000):Multi-statement transaction required more than 'max_binlog_cache_size' bytes ofstorage; increase this mysqld variable and try again
mysql> set global max_binlog_cache_size=8388608000000;
Query OK, 0 rowsaffected (0.00 sec)
mysql> begin;
Query OK, 0 rowsaffected (0.00 sec)
mysql> update erp_mkpf set usnam='测试1864错误';
Query OK, 70466 rowsaffected (0.38 sec)
Rows matched:70466 Changed: 70466 Warnings: 0
mysql> commit;
Query OK, 0 rowsaffected (0.08 sec)

从库查看状态:

mysql> show slavestatus\G
Last_SQL_Errno: 1864
Last_SQL_Error: Cannot scheduleevent Update_rows, relay-log name ./HE1-relay-bin.000005, position 494 toWorker thread because its size 8200 exceeds 1024 ofslave_pending_jobs_size_max.

以上所述是小编给大家介绍的Mysql 1864 主从错误解决方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

相关文章

  • MySQL数据库恢复(使用mysqlbinlog命令)

    MySQL数据库恢复(使用mysqlbinlog命令)

    binlog是通过记录二进制文件方式来备份数据,然后在从二进制文件将数据恢复到某一时段或某一操作点。
    2011-08-08
  • MySQL如何查看正在运行的SQL详解

    MySQL如何查看正在运行的SQL详解

    在项目开发里面总是要查看后台执行的sql语句,mysql数据库也不例外,下面这篇文章主要给大家介绍了关于MySQL如何查看正在运行的SQL的相关资料,文中介绍的非常详细,需要的朋友可以参考下
    2023-01-01
  • Can’t open file:''[Table]mytable.MYI''

    Can’t open file:''[Table]mytable.MYI''

    也许很多人遇到过类似Can’t open file: ‘[Table]mytable.MYI’ 这样的错误信息,却不知道怎么解决他,下面我们做个介绍,
    2011-01-01
  • MySQL迁移到Oracle数据库的超详细步骤和方法总结

    MySQL迁移到Oracle数据库的超详细步骤和方法总结

    今天接到一个任务,让我把MySQL中的表与数据移植到Oracle中,所以这里总结下,这篇文章主要给大家介绍了关于MySQL迁移到Oracle数据库的超详细步骤和方法,需要的朋友可以参考下
    2023-11-11
  • MySQL 十大常用字符串函数详解

    MySQL 十大常用字符串函数详解

    数据库函数是一种具有某种功能的模块,可以接收零个或多个输入值,并且返回一个输出值,这篇文章给大家介绍MySQL 十大常用字符串函数,感兴趣的朋友跟随小编一起看看吧
    2021-06-06
  • MySql连接查询方式详解

    MySql连接查询方式详解

    这篇文章主要介绍了mysql连接查询,当查询结果的列来源于多张表时,需要将多张表连接成一个大的数据集,再选择合适的列返回,本文给大家介绍的非常详细,需要的朋友参考下吧
    2022-09-09
  • MySQL数据库安装方法与图形化管理工具介绍

    MySQL数据库安装方法与图形化管理工具介绍

    这篇文章介绍了MySQL数据库安装方法与图形化管理工具,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-05-05
  • mysql_fetch_row()与mysql_fetch_array()的使用介绍

    mysql_fetch_row()与mysql_fetch_array()的使用介绍

    本篇文章是对mysql_fetch_row()与mysql_fetch_array()的使用进行了详细的分析介绍,需要的朋友参考下
    2013-06-06
  • MySQL压测神器HammerDB的部署及使用详解

    MySQL压测神器HammerDB的部署及使用详解

    HammerDB 是一个开源的数据库负载测试和基准测试工具,同时支持 Windows 和 Linux 平台,这篇文章主要介绍了MySQL压测神器HammerDB的部署及使用,需要的朋友可以参考下
    2022-08-08
  • MySQL中Select查询语句的高级用法分享

    MySQL中Select查询语句的高级用法分享

    MySQL是一个开源的关系型数据库管理系统,支持多种操作语言,其中最基础、最常用的命令之一就是SELECT语句,所以本文就来和大家聊聊Select查询语句的几个高级用法吧
    2023-05-05

最新评论