当前位置: 首页 > 科技观察

MySQL数据库监控指标执行性能总结

时间:2023-03-12 02:59:41 科技观察

概述如果您的数据库运行缓慢,或者由于某种原因不响应查询,那么您的技术堆栈中依赖数据库的每个组件都会出现性能问题。为了保证数据库的平稳运行,可以主动监控与性能和资源利用率相关的指标——查询执行性能。查询性能MySQL用户可以通过多种方式监控查询延迟,可以通过MySQL内置的指标,也可以通过查询性能模式。自MySQL5.6.6起默认启用,MySQL的performance_schema数据库中的表存储有关服务器事件和查询执行的低级统计信息。1.performance_schema性能模式的events_statements_summary_by_digest表包含了很多关键指标,捕获了每条标准化语句相关的延迟、错误、查询量信息。从该表中获取的示例行显示一条语句执行了18次,平均执行时间为2.5毫秒(所有计时器测量单位为皮秒)按模式平均以微秒为单位运行时间:SELECTschema_name,SUM(count_star)count,ROUND((SUM(sum_timer_wait)/SUM(count_star))/1000000)ASavg_microsecFROMperformance_schema.events_statements_summary_by_digestWHEREschema_nameISNOTNULLGROUPBYschema_name;按模式计算出现错误的语句总数:SELECTschema_name,SUM(sum_errors)err_countFROMperformance_schema.events_statements_summary_by_digestWHEREschema_nameISNOTNULLGROUPBYschema_name;2.sys模式对于临时查询或调查,通常使用MySQL的sys模式更简单。sys模式以更易于阅读的格式提供了一个有组织的指标集合,使相应的查询更加容易。2.1.找到最慢的语句(运行时间在第95个百分位数之外):SELECT*FROMsys.statements_with_runtimes_in_95th_percentile;2.2.检查哪些标准化语句有错误:SELECT*FROMsys.statements_with_errors_or_warnings;3、慢查询有丰富的性能模式和sys模式对于性能数据,MySQL还提供了一个Slow_queries计数器,每当查询的执行时间超过long_query_time参数指定的值时,该计数器就会增加。默认情况下,此阈值设置为10秒。SHOWVARIABLELIKE'long_query_time';如果觉得有用,请转发!更多devops和DBA内容稍后会分享,感兴趣的朋友可以关注一下~