一个参数引起的mysql从库宕机血案

一个参数引起的MySQL从库宕机血案
Part1:max_binlog_cache_size
max_binlog_cache_size 表示的是binlog 能够使用的最大cache 内存大小
当我们执行多语句事务的时候 所有session的使用的内存超过max_binlog_cache_size的值时
就会报错:“Multi-statement transaction required more than 'max_binlog_cache_size' bytes ofstorage”

Part2:为什么它能引起宕机
Warning:警告1
max_binlog_cache_size在主从设置不一致的情况下,主库参数值大于从库参数值,在主库进行大事务操作时,主库顺利进行,从库因max_binlog_cache_size值低于该事物所需,从库会抛出“Multi-statement transaction required more than 'max_binlog_cache_size' bytes ofstorage”错误号为1197。
Warning:警告2
max_binlog_cache_size在主从参数设置一样的情况下,主库执行大事务操作,如主库提示需提高该参数以顺利执行SQL,但DBA只调整了主库的max_binlog_cache_size而忘记调整从库的max_binlog_cache_size,则同样从库会爆出1197错误,导致主从不同步。
Part3:该设置值为多少
具体值设置为多少,不能纸上谈兵,还需要看公司的具体业务,这里除了不设置该值使用默认值(默认值很大)以外,个人推荐值为4G,基本已经足够应付大部分场合,但无论是否指定该值,在对大表进行操作时,都需注意上述的警告内容,避免该值设置不合理引起从库无法执行报1197的问题。具体命令如下:
set global max_binlog_cache_size =4294967296;

——总结——
该值为动态参数,可以随时利用上述命令进行调整,所以别忘记将该参数加入到my.cnf中以防止重启数据库后失效。由于笔者的水平有限,编写时间也很仓促,文中难免会出现一些错误或者不准确的地方,不妥之处恳请读者批评指正。
本文出自 “贺磊” 博客,请务必保留此出处http://suifu.blog.51cto.com/9167728/1859252
一个参数引起的mysql从库宕机血案的更多相关文章
- Oracle备库宕机启动解决方案
简介 ORA-10458: standby database requires recovery ORA-01196: 文件 1 由于介质恢复会话失败而不一致 ORA-01110: 数据文件 1: ' ...
- MySQL 从库down机
MySQL 从库down机中午突然down机,重启后,从库同步报主键重复的错误. Could not execute Write_rows event on table operation_maste ...
- 数据库主库从库宕机重启后binlog数据同步
由于阿里云经典网络迁移到专用网络,一不小心没有先预备方案调整网段, 导致实例无法以内网IP形式访问数据库,被迫进行数据库停机后网络网段调整,导致宕机了几个小时...被客户各种投诉爆了.. 基于这次数据 ...
- mysql如果主库宕机,如何解决?
两种情况服务器down机,数据库down机 如果此时需要切从库 1.先show processlist\G,查看状态 如果看到两个状态,说明此时的从库和主库是同步的 state: waiting fo ...
- mysql 异常宕机 ..InnoDB: Database page corruption on disk or a failed,,InnoDB: file read of page 8.
mysql 测试环境异常宕机 系统:\nKylin 3.3 mysql版本:5.6.15--yum安装,麒麟提供的yum源数据库版本 error日志 181218 09:38:52 mysqld_sa ...
- 机器突然宕机导致hdfs启动一直超时的行为
今天手里其中一个集群几个机器突然宕机,启动hdfs一直超时. clouder-scm-agent主要报了这个错RROR: Unexpected error 'getpwuid(): uid not f ...
- 【MySQL】MySQL主从库配置和主库宕机解决方案
1.转载:https://blog.csdn.net/zfl589778/article/details/51441719/ 2.效果:亲测有效,数据写入成功. 3.主机宕机后,如果不是长时间宕机,且 ...
- mysql扩展库-1
启用mysql扩展库 在php.ini文件中去配置mysql扩展库 extension=php_mysql.dll 可以通过 phpinfo() 查看当前php支持什么扩展库. 在sql扩展库中创建一 ...
- MySQL 系列(四) 主从复制、读写分离、模拟宕机、备份恢复方案生产环境实战
本章内容: 主从复制 简介原理 备份主库及恢复从库,配置从库生效 读写分离 如果主宕机了,怎么办? 双主的情况 MySQL 备份及恢复方案 备份单个及多个数据库 mysqldump 的常用参数 如何增 ...
随机推荐
- a href="javascript:void(0)" 是什么意思?加不加上有什么区别?
<A href="javascript:void(0)">点击</a>点击链接后不会回到网页顶部<A href="#">点击 ...
- 白话解释IIS并发连接数
做负载均衡的时候会发现有很多并发数的参数.其中有一个"IIS并发连接数"是我们要关注的. 假设"IIS并发连接数"显示为1000,这并不代表有1000个客户端在 ...
- Puzzles
Puzzles Barney lives in country USC (United States of Charzeh). USC has n cities numbered from 1 thr ...
- CASpringAnimation
iOS9新出现的 /** Subclass for mass-spring animations. */ @interface CASpringAnimation : CABasicAnimation ...
- SDAU课程练习--problemO(1014)
题目描述 Before bridges were common, ferries were used to transport cars across rivers. River ferries, u ...
- Qt5:Qt程序不在任务拦显示图标
setWindowFlags(Qt::Tool | Qt::WindowStaysOnTopHint | Qt::X11BypassWindowManagerHint); 回头再写
- XHTML与HTML的差别
HTML与XHTML之间的差别,粗略可以分为两大类比较:一个是功能上的差别,另外是书写习惯的差别.关于功能上的差别,主要是XHTML可兼容各大浏览器.手机以及PDA,并且浏览器也能快速正确地编译网页. ...
- sencha touch环境搭建
引入touch文件,包括resources和sencha-touch-debug.js文件 index.html文件内容如下: <!DOCTYPE HTML> <html> & ...
- 笔记:利用Cocos2dx 3.3 lua 做一个动作类游戏(一)
在这之前,声明一下: 做不完我是小狗. 没办法,没毅力和恒心,之前的那个Quick Cocos2dx做的横版过关游戏的demo已经转成了3.3的版本了,其实也算是个半成品,战斗,UI啥的都有了,呵呵. ...
- Vmware克隆虚拟机后网卡eth0变eth1解决
在克隆虚拟机的过程中,发现新克隆的机器的网卡由eth0变成了eth1,然而并没有eth1的配置文件. 1.#ip a 查看当前ip地址,发现是eth1网卡 2.#ll /etc/sysconfig/n ...