[英]How to log query and its execution time of each query which runs on a db?
我有一个包含250多个表的庞大数据库。 在数据库上运行不同类型的查询。 由于数据库已经发展多年,现在我需要优化数据库和查询。 我已经遵循了索引等优化概念。
我的问题是,如何记录查询及其在数据库上运行的每个查询的执行时间? 所以我可以分析哪个查询需要多少秒并优化它们。
鉴于我知道MYSQL Trigger是理想的,但我不知道如何为整个数据库编写一个触发器,因此它将每个查询记录到一个具有查询执行时间的表中。 我希望触发器记录数据库中发生的所有CRUD操作。
我怎么能完成它?
使用mysql慢查询日志 。 这将帮助您仅获取缓慢而不是记录/分析所有查询的查询。 您只需要为long_query_time
设置param,例如1或2秒。
你也可以设置long_query_time = 0
,你会看到所有的SQL查询!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.