mysql是slot_技术分享 | MySQL 主机该如何配置 fs.aio-max-nr
作者:洪斌
爱可生南区负责人兼技术服务总监,MySQL ACE,擅长数据库架构规划、故障诊断、性能优化分析,实践经验丰富,帮助各行业客户解决 MySQL 技术问题,为金融、运营商、互联网等行业客户提供 MySQL 整体解决方案。
本文来源:转载自公众号-玩转MySQL
*爱可生开源社区出品,原创内容未经授权不得随意使用,转载请联系小编并注明来源。
MySQL 默认是启用 innodb_use_native_aio,使用异步 IO 操作,MySQL 启动时所需 aio slot 若超过系统当前 fs.aio-max-nr 设置,则无法启动报错 InnoDB: io_setup() failed with EAGAIN after 5 attempts.
通常在单机单实例环境下很少会遇到超出 aio-max-nr 的问题,若部署单机多实例,会大概率遇到此问题。我们来分析下该如何配置 fs.aio-max-nr 参数。关于 aio-nr 与 aio-max-nr
aio-nr is the running total of the number of events specified on the
io_setup system call for all currently active aio contexts. If aio-nr
reaches aio-max-nr then io_setup will fail with EAGAIN. Note that
raising aio-max-nr does not result in the pre-allocation or re-sizing
of any kernel data structures.
启动 MySQL 时会分配多少个 event slot?
使用 strace 观测 io_setup 调用情况,
strace -fe trace=io_setup /path/to/mysqld --defaults-file=/etc/my.cnf --daemonize 2>&1 |grep io_setup
总共:4709 个 = 18 * 256 + 101
其分配 256 event 的也就是 InnoDB IO 线程。
结论
实例申请的 fs.aio-nr = (innodb_read_io_threads + innodb_write_io_threads + log thread + insert buffer thread) * 256 + 101
若单实例部署,fs.aio-max-nr 至少大于单实例 fs.aio-nr
若多实例部署,至少大于 本机实例数 * 每个实例的 fs.aio-nr
mysql是slot_技术分享 | MySQL 主机该如何配置 fs.aio-max-nr相关推荐
- fs.aio max nr mysql_技术分享 | MySQL 主机该如何配置 fs.aio-max-nr
MySQL 默认是启用 innodb_use_native_aio,使用异步 IO 操作,MySQL 启动时所需 aio slot 若超过系统当前 fs.aio-max-nr 设置,则无法启动报错 I ...
- mysql 客户端_技术分享 | MySQL 客户端连不上(1045 错误)原因全解析
作者:Carlos Tutte.Marcos Albe 翻译:管长龙 在我们学习 MySQL 或从事 MySQL DBA 工作期间,时常会遇到:"我尝试连接到 MySQL 并且收到1045 ...
- fs.aio max nr mysql_MySQL主机该如何配置fs.aio-max-nr
MySQL默认是启用innodb_use_native_aio,使用异步IO操作,MySQL启动时所需aio slot若超过系统当前fs.aio-max-nr设置,则无法启动报错 InnoDB: io ...
- pt5 mysql预处理_技术分享 | MySQL 监控利器之 Pt-Stalk
一.概述 之前在社区发了一篇[有效解决 MySQL 行锁等待超时问题]文档,主要介绍了下行锁超时的监控方法,下方评论中有人提到了 pt-stalk 工具也可以监控行锁超时,因为个人没怎么用过这个工具, ...
- mysql semi join_技术分享 | MySQL 子查询优化
作者:胡呈清 爱可生 DBA 团队成员,擅长故障分析.性能优化,个人博客:https://www.jianshu.com/u/a95...,欢迎讨论. 本文来源:原创投稿 *爱可生开源社区出品,原创内 ...
- mysql优化说出九条_技术分享 | MySQL 优化:为什么 SQL 走索引还那么慢?
原标题:技术分享 | MySQL 优化:为什么 SQL 走索引还那么慢? 背景 2019-01-11 9:00-10:00 一个 MySQL 数据库把 CPU 打满了. 硬件配置:256G 内存,48 ...
- mysql数据库压缩备份_MySQL数据库之mysql数据库备份命令分享(mysql压缩数据库备份)...
本文主要向大家介绍了MySQL数据库之mysql数据库备份命令分享(mysql压缩数据库备份) ,通过具体的内容向大家展现,希望对大家学习MySQL数据库有所帮助. 备份MySQL数据库的命令 复制代 ...
- 发布json数据_技术分享 | MySQL 8.0.17 GA 发布!
昨日 MySQL 官网正式发布 8.0.17 / 5.7.27 / 5.6.45 三个(维护)版本,距离上一个 GA 版本(8.0.16)发布时隔仅 88 天! MySQL 各开发团队的博客网站,同一 ...
- ACMUG活动回顾 | MySQL创始人见面会技术分享会圆满结束
9月2日,MySQL.MariaDB创始人Monty见面会&技术分享会在杭州圆满落幕.此次会议由ACMUG与沃趣科技携手,邀请数据库领域大神Monty与多位技术专家齐聚一堂,就未来数据库发展趋 ...
- 技术分享 | MySQL中MGR中SECONDARY节点磁盘满,导致mysqld进程被OOM Killed
欢迎来到 GreatSQL社区分享的MySQL技术文章,如有疑问或想学习的内容,可以在下方评论区留言,看到后会进行解答 在MGR测试中,人为制造磁盘满问题后,节点被oom killed 问题描述 在对 ...
最新文章
- 老板的亲戚给我当助手?
- SQL中Truncate的用法
- 如何启动和关闭oracle数据库,Oracle数据库启动和关闭方式总结
- 看到一个blog的标语,有意思!
- 飞秋(FeiQ)2012版择日发布
- 浅谈栈和队列的有关面试题
- awk grep sed cut学习
- html上传文件出现fakepath,IE8上传文件时获取文件本地路径问题(C:\fakepath\……)的解决...
- 我的Foobar2000定制版本
- 【错误解决】Spring JPA的错误及其解决方案
- Window下Ribbit MQ安装
- IIR滤波器设计之冲激响应不变法与双线性变换法
- Android 最全面试题汇总(问题+答案+详解链接)
- 金仓数据库KingbaseES客户端编程接口指南-ODBC(6. KingbaseES ODBC 的扩展属性)
- C++ Qt自建网页浏览器
- Linux常用命令——systemctl命令
- 串行DAC——基于小梅哥AC620
- DRL:强化学习-Q-Learning算法
- 公司绝对不会告诉你的潜规则 - 看到职场如战场了吧
- 艾永亮:戴森,你凭什么卖得这么贵?
热门文章
- php画弧,75、PHP图像处理之画圆、弧线、网站饼状统计图绘制
- php while次数,PHP While 循环
- java 函数式编程应用_java8 函数式编程应用
- 解析json对象出现$ref: $.list[0]的解决办法
- C++求解汉字字符串的最长公共子序列 动态规划
- Java_基础_fail-fast
- JS 在火狐浏览器下关闭弹窗
- iOS 的keyChain
- ASP.NET的gridview设置数据格式(DataFormatString={})与 String.Format()【转载】
- 程序上下文切换,什么是上下文?