前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >MySQL监视——Performance Schema

MySQL监视——Performance Schema

作者头像
MySQLSE
发布2023-08-31 14:46:56
1610
发布2023-08-31 14:46:56
举报

MySQL的Performance Schema是一套内存表,用于跟踪MySQL的性能指标。它实际上使用PERFORMANCE_SCHEMA存储引擎,用户操作performance_schema数据库中的表。用户通过Performance Schema能够观察哪些查询正在运行、I/O等待的状态,及历史性能数据等等信息。Performance Schema仅对本地服务器有效,所有的更改不会复制到其他的服务器。

Performance Schema的表大致可以分为6个组,配置、当前事件、历史、实例、摘要,及其他。配置组里面包括配置监视特征的表、当前事件组中的表包含最近的事件信息、历史组中的表存储历史事件数据、实例组中的表定义什么样的对象类型用于测量、摘要组中的表整合事件信息,其他组中的表则记录未被分类的信息。

用户可以通过修改setup_%表的内容配置Performance Schema,setup_%表包括如下5张表:

代码语言:javascript
复制
+----------------------------------------+
| Tables_in_performance_schema (setup_%) |
+----------------------------------------+
| setup_actors                           |
| setup_consumers                        |
| setup_instruments                      |
| setup_objects                          |
| setup_threads                          |
+----------------------------------------+
  • setup_actors:检测有哪些前台线程
  • setup_consumers :监控的事件存储在哪里
  • setup_instruments:Performance Schema收集哪些服务器度量指标
  • setup_objects :检测有哪些对象
  • setup_threads:检测有哪些线程分类

Performance Schema中存在大量的检测项目,检测项目对应MySQL服务器的源代码检测点,检测项目名称由一系列部件组成采用“/”分割,从左到右,从通用到具体。例如,

代码语言:javascript
复制
wait/io/file/myisam/log
stage/sql/closing tables

通用(顶层)的组件包括,

  • idel:检测的空闲事件
  • error:检测的错误事件
  • memory:检测的内存事件
  • stage:检测的阶段事件
  • statement:检测的语句事件
  • transaction:检测的事务事件
  • wait:检测的等待事件

Performance Schema 是DBA 提高性能的工具,通过进行实际的测量对服务器的性能进行调整。通常情况下,DBA对一个可以重复再现的问题利用Performance Schema进行分析。

  • 启用全部的检测项目
  • 运行查询
  • 通过分析,排除没有问题的部分
  • 禁用已排除的检测项目
  • 再次执行前面的过程,随着多次迭代,确定影响性能的根本原因
  • 确定原因后,采取适当措施进行优化
  • 对比优化后的性能

以上内容是关于Performance Schema的简单介绍,完全掌握Performance Schema将对MySQL运维能力的提升有巨大帮助,感兴趣的读者请访问官网详细学习相关内容。

感谢关注MySQL解决方案工程师!

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2023-06-19,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 MySQL解决方案工程师 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云数据库 MySQL
腾讯云数据库 MySQL(TencentDB for MySQL)为用户提供安全可靠,性能卓越、易于维护的企业级云数据库服务。其具备6大企业级特性,包括企业级定制内核、企业级高可用、企业级高可靠、企业级安全、企业级扩展以及企业级智能运维。通过使用腾讯云数据库 MySQL,可实现分钟级别的数据库部署、弹性扩展以及全自动化的运维管理,不仅经济实惠,而且稳定可靠,易于运维。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档