其实到了这里 , 我们的分析还是不够深入 , 我们可以发掘出更多的信息 , 那就是可以提供给业务方一个更全面的信息列表 , 比如那些表中的索引是冗余索引 , 那些表走了全表扫描需要考虑添加索引 。
这里需要正确引用sys schema,比如:
文章插图
通过如上的信息可以发现我们需要重点考虑前面的几个表 , 走了全表扫描 , 产生了较大的延迟 。
而稍后的解决方法 , 其实是通过对于业务的反馈优化 , 在业务添加了相关索引之后 , 还是建议打开参数:log_queries_not_using_indexes , 这对于一些业务场景的监控其实也是有效的 。
如此一来 , 我们对慢日志的分析也告一段落 , 如果对于每条报警信息我们都认真对待 , 其实相应技术能力的提升也会很快 。
其实行业里有一个常见的“伪需求“ , 就是开发同学经常需要关注慢日志 , 从工作的角色和分工来看 , 他们得到慢日志之后的分析和处理常常和问题的本质相左 , 换句话说 , 他们得到慢日志 , 是希望通过分析日志来发现一些明显的性能问题 , 通过这种信息检索的方式 , 来快速定位问题 , 但是实际上得到日志之后的分析结果是不可控的 , 可能10分钟 , 可能分析不出来 。
而这个工作其实是应该作为运维的前置工作来完成的 , 既然开发对于慢日志的处理不专业 , 势必需要DBA来提供专业的建议 , 而如果我们能够通过一种透明自助的方式来提供分析和有效建议 , 对于开发同学来说 , 其实他们需要的不是慢日志 , 而是你的数据服务能力 。
推荐阅读
- MySQL 8.0 InnoDB无锁化设计的日志系统
- MySql主从复制,从原理到实践
- 历时七天,史上最强MySQL优化总结,从此优化So Easy
- 梦见一条狗一直跟着我,打也打不走 梦见一条狗一直跟着我是什么意思?
- 容易被忽视的MySQL字符集问题?
- MySQL基本命令整理,java数据库秘籍!
- 深入理解MySQL的事务
- MySQL无锁化WAL系统那些事儿
- 阿里架构师教你处理高并发:2种方法,解决Redis和Mysql一致性
- 几大常用的MySQL图形化管理工具推荐!