我想知道在sysbench --time=100 ...的执行过程中,MySQL的瓶颈(功能)。因此,我想在执行MySQL时分析sysbench --time=100 ...。
我知道,通过set profiling = 1;,我可以为一个特定的查询获取这样的配置文件,但不能在一段时间内(100秒)。我能做什么?
谢谢。
发布于 2021-04-07 17:07:52
根据我的经验,PROFILE总是说99%的时间都花在“无用”的类别上,比如“发送数据”。这类类别的“从未”转化为任何可采取行动的东西。PROFILE被废弃了-好的解脱。
EXPLAIN SELECT ...和EXPLAIN FORMAT=JSON ...有一些用处。“优化器跟踪”也是如此。
使用慢速日志: mysql.rjweb.org/doc.php/mysql_analysis#slow_queries_and_slowlog,您可以在实时系统上这样做。
另一种了解正在发生的事情的技术是使用"Handler“计数。即使在表目前太小以至于时间不太有用的情况下,这也是可行的。详细信息:http://mysql.rjweb.org/doc.php/index_烹饪书_mysql#handler_数数
发布于 2021-04-07 17:26:41
MySQL查询分析被取消,以支持performance_schema解决方案。
查询分析器为当前会话中给定查询的每个查询执行“阶段”提供延迟。
性能模式为您提供了跨越多个会话的每个查询执行阶段的延迟,而不仅仅是当前会话。您基本上可以按照您的要求,在一段时间内获得所有查询的概要查询。
不幸的是,导航性能模式非常复杂。这是一个非常强大的功能,但没有做多少工作,使它的用户友好。
https://dba.stackexchange.com/questions/289419
复制相似问题