哇塞,最详细的MySQL调优性能监控之performance schema
发布网友
发布时间:2024-10-21 14:22
我来回答
共1个回答
热心网友
时间:2024-11-30 12:13
MySQL的performance schema用于监控MySQL server在运行过程中的性能。其特点包括提供实时检查server内部执行情况的方法,通过监视server事件来实现监控,与information schema关注点不同,重点关注性能数据,事件可以是函数调用、操作系统等待等。
performance schema中的事件与binlog事件、事件计划程序事件不同,记录的是server执行活动对资源的消耗、耗时等信息。事件只在本地server的performance schema中记录,不会被写入binlog或复制到其他server。事件记录在performance schema数据库的表中,可以使用SQL语句查询和更新。这些表中的数据不会持久化存储,服务器重启后数据会丢失。
performance schema在MySQL 5.7版本中默认开启,可使用SHOW CREATE TABLE命令查看表结构,并了解instruments(事件采集器)和consumers(事件保存器)。performance schema表可以按照不同的维度进行分组,如语句事件、等待事件、阶段事件等。
常用配置项包括启动选项和系统变量,这些选项与performance schema性能监控相关,需要设置performance_schema=ON生效。配置表之间存在相互关联关系,如performance_timers、setup_timers、setup_consumers等表。setup_instruments表管理事件采集器,setup_consumers表管理事件保存器,而setup_actors、setup_objects表则分别用于控制监视的线程和对象。
performance schema提供了丰富的配置选项和表,可以进行实际的性能监控和分析。通过这些表,可以查询和更新各种性能数据,了解SQL执行、资源使用、等待时间等信息。具体操作包括查看表结构、配置监控选项、分析事件数据等。
实践操作中,可以使用这些表进行数据分析,如查询事件的执行次数、耗时等,从而优化数据库性能。此外,还可以通过设置监控选项和配置表来调整监控范围和深度,以满足特定需求。