位置: 编程技术 - 正文

MySQL Slave 触发 oom-killer解决方法(mysql触发事件)

编辑:rootadmin

推荐整理分享MySQL Slave 触发 oom-killer解决方法(mysql触发事件),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:mysql触发器详解,mysql的触发事件有哪三种,mysql触发器菜鸟教程,mysql触发事件,mysql触发器详解,mysql触发器 sql,mysql触发器的三种触发事件,mysql触发器的三种触发事件,内容如对您有帮助,希望把文章链接给更多的朋友!

最近经常有收到MySQL实例类似内存不足的报警信息,登陆到服务器上一看发现MySQL 吃掉了%的内存,God !

有时候没有及时处理,内核就会自己帮我们重启下MySQL,然后我们就可以看到 dmesg 信息有如下记录:

Mar 9 :: xxxxxx kernel: mysqld invoked oom-killer: gfp_mask=0xda, order=0, oom_adj=0, oom_score_adj=0Mar 9 :: xxxxxx kernel: mysqld cpuset=/ mems_allowed=0Mar 9 :: xxxxxx kernel: Pid: , comm: mysqld Not tainted 2.6.-.el6.x_ #1Mar 9 :: xxxxxx kernel: Call Trace:

现描述一下具体场景吧:

大前提 : 操作系统以及MySQL 版本:

OS : CentOS release 6.5 (Final) Kernel : 2.6.-.el6.x_(物理机)MySQL : Percona 5.6.-.1-log(单实例)

触发场景:Slave 不管是否有其它链接进来都会出现内存周期性的暴涨,触发内核oom-killer 据说这个问题都出现了1年多了,由于刚过来,老大就让我再查查看能不能找到什么蛛丝马迹,那么就开始Check 这个问题咯:

1. 怀疑给MySQL 分配的内存不合理,那么我就去check 了一下 innodb_buffer_pool 的大小 和物理内存的大小,发现分配给BP的大小占物理内存的%左右,那么不是这个原因, 排除掉,要是是这个问题它们也应该早就发现了~2. 检查操作系统各项参数配置。[vm.swappiness = 1 ; /proc/sys/vm/overcommit_memory ; oom_adj ] 在没排查到问题前可以临时设置一下 adj参数 给个 - 或者直接 -,这样内核就永远不会kill 掉 mysql了, 但是这样做不能根本解决问题, 而且存在一定的风险, 会不会导致MySQL 需要内存又分配不出来而hang住呢? 这个办法就想想算了吧。3. 好吧,mysql初始化参数、操作系统参数看起来没什么配置有不恰当的地方。那我们就来找找MySQL 本身的吧!

MySQL Slave 触发 oom-killer解决方法(mysql触发事件)

既然MySQL 内存一直处于在飙升的状态,那么,会不会是由于内存分配的时候导致的呢,那么根据网上报了一个MySQL 内存分配引起的一个Bug,我也来在我这个环境操作一把,一看究竟:1.记录当前 MySQL 进程占用的 内存大小;2.记录 show engine innodb status ; 3. 执行 flush tables; 4.记录 show engine innodb status; 5. 记录 MySQL 进程占用大小;6 对这两次结果进行对比,主要看看在执行Flush table 前 和 Flush Table 后MySQL 分配的内存有没有明显的变化。 好吧, 这个bug 貌似不再我这里。

看了一下这个版本有个 innodb_buffer_pool_instances 参数,官网上也有关于innodb_buffer_pool_instances 和 innodb_buffer_pool_size设置不当 导致MySQL OOM 的 bug ,大概的意思就是:我们可以给innodb_buffer_pool_size 设置的比我们实际物理内存要大,比如我们物理内存是:GB,而我们设置 innodb_buffer_pool_size=GB,并且把 innodb_buffer_pool_instances > 5 ,我们就依旧可以把MySQL 拉起来。但是呢, 这样MySQL很容易OOM。详细信息: 这里看过来。

还有种情况,也报过BUG,就是 slave 设置过滤的时候,也会触发OOM ,but 我这些个 Instance 没有设置, 所以就 忽略这点咯。

既然不是MySQL内存超售引起,也不是 打开表的句柄导致。那么还有什么原因呢?

我们再想想,这个现象出现在Slave,Master 和Slave 配置一样, 只是Master 上跑了生产业务,Slave 上有些Instance 跑了查询业务,有些Instance 根本就没有跑任何任务,但是还是会出发OOM,那么这种情况很可能就是 Slave 引起的?蕖?/p>

那我就找了个实例上去试了一把, 不试不知道啊, 一试吓一跳。上去执行了一下:stop slave;start slave;这个命令卡了大概3分钟,再一看内存使用情况,一下子释放出来了GB+。 到这里基本上算是定位到了问题所在了,但是Slave 我们都知道有两个线程,到底是由于SQL Thread 还是 IO Thread 导致的呢? 这个还的等待下次即将发生时在进一步排查了。

贴点内存的监控信息:

:: PM kbmemfree kbmemused %memused kbbuffers kbcached kbcommit %commit:: PM . .:: PM . .:: PM . .:: PM . .:: PM . .

我把稍微再具体点的东西记录到了这里: OOM临时解决办法: 重启Slave长期解决办法: 小版本升级 MySQL Server

更系统点的请看郭总写的:

Slave memory leak and trigger oom-killer BugDescriptionWehavethisproblem:wehavesetinnodb_buffer_pool=GBonbothmasterandslave,masterofferusuallyworkload,butslavewithnothingworkloadexcepttheseslavethreads,Butwiththememoryconsumptionisincreasi

MySQL 5.6 & 5.7最优配置文件模板(my.ini) Inside君整理了一份最新基于MySQL5.6和5.7的配置文件模板,基本上可以说覆盖%的调优选项,用户只需根据自己的服务器配置稍作修改即可,如InnoDB缓冲池

MYSQL神秘的HANDLER命令与实现方法 MySQL自古以来都有一个神秘的HANDLER命令,而此命令非SQL标准语法,可以降低优化器对于SQL语句的解析与优化开销,从而提升查询性能。看到这里,可能

标签: mysql触发事件

本文链接地址:https://www.jiuchutong.com/biancheng/347923.html 转载请保留说明!

上一篇:MySQL OOM 系列三 摆脱MySQL被Kill的厄运(mysqlw3school)

下一篇:Slave memory leak and trigger oom-killer

  • 小规模纳税人纳税申报时间
  • 子公司自购买日开始持续计算的净资产包括商誉吗
  • 水果销售公司简介
  • 权责发生制和收付实现制是会计基础吗
  • 银行按揭方式销售开发产品
  • 营改增后建筑业怎么开票
  • 存货进口关税会计处理怎么做?
  • 多开进来的发票怎么结算税点呢?
  • 通行费进项抵扣条件
  • 公司报销学费属于 薪酬还是福利呢
  • 免税企业收到的专用发票要怎么转出
  • 纳税等级信息查询
  • 小规模纳税人1%税收优惠
  • 涂料发票几个点的税
  • 金蝶哪个版本最好
  • 企业所得税中准予扣除的损失
  • 公益性捐赠专用会计科目
  • 年末利润分配会计处理
  • 年终奖金计税方式区别
  • 居民小区人防设施主要是什么
  • 核定征收的小规模企业优惠
  • 跨年度暂估成本入账冲回如何会计分录
  • 定向增发是什么融资方式
  • 政府拨款经费会计分录
  • PHP:xml_set_processing_instruction_handler()的用法_XML解析器函数
  • dghm.exe是什么程序
  • 高温补贴需要缴纳社会保险费吗
  • 货运代理开票
  • 抵免法的缺点主要有以下几点
  • 房地产企业借款可以用未建成的房子设定浮动抵押吗?
  • 收到银行承兑汇票的账务处理
  • 固定资产减少的账务处理
  • 参展费会计分录
  • 所得税季报本月数是指
  • 【类ChatGPT】本地CPU部署中文羊驼大模型LLaMA和Alpaca
  • ai数字绘画设计培训
  • 数据库防止重复数据
  • php access_token
  • 域名续费多久生效
  • 境外企业在境内提供服务 企业所得税
  • ubuntu下mysql版本升级到5.7
  • mongodb数据类型有哪些
  • 保险业务手续费
  • 两免三减半取消了吗
  • 政府补助的企业所得税如何处理
  • 已执行新金融准则 本期金额
  • 增值税专用发票有几联?
  • 增值税专用发票怎么开
  • 小规模纳税人出租不动产免征增值税
  • 交通运输服务包括程租
  • 税金及附加的核算范围
  • 人工费没有发票怎么办
  • 发票超过定额了怎么处理
  • 律师事务所日语助理
  • 饭店会计做账流程
  • 明细账填制要求
  • 公司坏账率一般多少
  • mysql5.7.21安装
  • bios设置从光驱启动优先,可是启动不了
  • bootcamp您的磁盘未能分区
  • centos sudoers
  • explore是什么进程
  • windowsxp怎么卸载
  • 苹果MAC电脑怎么玩圣安地列斯
  • centos配ip的方法
  • centos7 swap大小设多少
  • kenmail.exe进程有什么用 是什么进程 kenmail进程查询
  • unix2dos linux实现
  • linux如何安装软件教程
  • 单线程语言有哪些
  • JavaScript事件代理和委托详解
  • android四大组件生命周期
  • swift协议范型
  • 深圳市税务局好考吗
  • 浙江公务员冬令时上班时间
  • 法律服务所与律师事务所区别
  • 宁夏地税领导班子名单
  • 破产重整期间的税收
  • 征管基础平台app
  • 纳税人在国外签字流程
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设