在线精品99_中国九九盗摄偷拍偷看_91免费版在线观看_91.app_91高清视频在线_99热最新网站

如何使用Performance Schema查看Profiling

120次阅读
没有评论

共计 4274 个字符,预计需要花费 11 分钟才能阅读完成。

丸趣 TV 小编给大家分享一下如何使用 Performance Schema 查看 Profiling,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!

SHOW PROFILE 可以用来 MySQL 执行语句时候所使用的资源(诸如 IO,上下文切换,CPU,Memory 等等), 但是从 MySQL 5.6.7 开始此特性将被移除,而使用 Performance Schema 代替,如下:

setup_actors 配置

MySQL 5.7.8, 可以通过 setup_actors 表来配置 host, user, or account 的信息被收集,如下:
# 默认情况下 setup_actors 的配置是允许监控和收集所有前台线程的历史事件信息  

SELECT * FROM
performance_schema.setup_actors;
+——+——+——+———+———+
| HOST | USER | ROLE | ENABLED | HISTORY |
+——+——+——+———+———+
| %  | %  | % 
| YES  | YES  |
+——+——+——+———+———+
1 row in set (0.03 sec)

# 修改默认的配置,关闭对所有前台线程的监控和收集。并且插入新的行为指定的用户开启监控和收集信息

mysql
UPDATE performance_schema.setup_actors SET ENABLED = NO , HISTORY = NO
– WHERE HOST = % AND USER = %
mysql INSERT INTO performance_schema.setup_actors
(HOST,USER,ROLE,ENABLED,HISTORY)
– VALUES(localhost , test_user , % , YES , YES

# 修改后的配置如下:
mysql SELECT * FROM performance_schema.setup_actors;
+———–+———–+——+———+———+
| HOST | USER | ROLE | ENABLED | HISTORY |
+———–+———–+——+———+———+
| % | % | % | NO | NO |
| localhost | test_user | % | YES | YES |
+———–+———–+——+———+———+
# 只监控和收集 test_user@localhost 用户相关的事件信息

Query Profiling Using Performance Schema 下文简单尝试下使用 Performance Schema 来查询 profile 相关信息,使用方法如下 1. 开启 setup_instruments 表中 statement 和 stage instrumentation 相关配置, 其中有些可能默认已经开启

mysql UPDATE performance_schema.setup_instruments SET ENABLED = YES , TIMED = YES
– WHERE NAME LIKE %statement/%
mysql UPDATE performance_schema.setup_instruments SET ENABLED = YES , TIMED = YES
– WHERE NAME LIKE %stage/%

2. 开启 events_statements_* and events_stages_* 相关消费(consumers),有些项目已经默认开启

mysql UPDATE performance_schema.setup_consumers SET ENABLED = YES
– WHERE NAME LIKE %events_statements_%
mysql UPDATE performance_schema.setup_consumers SET ENABLED = YES
– WHERE NAME LIKE %events_stages_%

3. 为了与 show profile 的结果做对比,开启 profiling 功能

mysql set profiling=1;

Query OK, 0 rows affected, 1 warning (0.00 sec)

mysql show warnings; #此处,也可以看到此特性将被移除的警告

+———+——+———————————————————————-+

| Level | Code | Message |

+———+——+———————————————————————-+

| Warning | 1287 | @@profiling is deprecated and will be removed in a future release. |

+———+——+———————————————————————-+

1 row in set (0.00 sec)

4. 执行 SQL 语句

mysql select * from t;

+—-+——+

| 9 | 15 |

| 10 | 15 |

| 2 | 20 |

| 3 | 20 |

| 8 | 25 |

+—-+——+

5 rows in set (0.00 sec)5 rows in set (0.00 sec)

5. 查看 profiling 结果

mysql show profiles;
+———-+————+—————–+
| Query_ID | Duration | Query |
+———-+————+—————–+
| 1 | 0.00010150 | show warnings |
| 2 | 0.00032075 | select * from t |
+———-+————+—————–+
2 rows in set, 1 warning (0.00 sec)

mysql show profile for query 2;
+———————-+———-+
| Status | Duration |
+———————-+———-+
| starting | 0.000038 |
| checking permissions | 0.000009 |
| Opening tables | 0.000048|
| init | 0.000022 |
| System lock | 0.000012 |
| optimizing | 0.000007 |
| statistics | 0.000016 |
| preparing | 0.000015 |
| executing | 0.000005 |
| Sending data | 0.000063 |
| end | 0.000008 |
| query end | 0.000009 |
| closing tables | 0.000013 |
| freeing items | 0.000012 |
| cleaning up | 0.000050 |
+———————-+———-+
15 rows in set, 1 warning (0.00 sec)

6. 查找刚才执行 SQL 的 EVENT_ID, 这步骤类似于 show profiles 查看 query id. 通过查询表 events_statements_history_long 获得对应的 EVENT_ID

注:此处只为了说明问题,可能还查询到很多其他的 SQL,但是我们自己知道我们执行的 SQL 是哪条,其他的 SQL 此处都被省略了

7. 通过查询 events_stages_history_long 表(NESTING_EVENT_ID=EVENT_ID)获得最终结果

mysql SELECT event_name AS Stage, TRUNCATE(TIMER_WAIT/1000000000000,6) AS Duration

FROM performance_schema.events_stages_history_long WHERE NESTING_EVENT_ID=79;
+——————————–+———-+
| Stage | Duration |
+——————————–+———-+
| stage/sql/init | 0.000048 |
| stage/sql/checking permissions | 0.000008 |
| stage/sql/Opening tables | 0.000051 |
| stage/sql/init | 0.000019 |
| stage/sql/System lock | 0.000012 |
| stage/sql/optimizing | 0.000006 |
| stage/sql/statistics | 0.000016 |
| stage/sql/preparing | 0.000015 |
| stage/sql/executing | 0.000004 |
| stage/sql/Sending data | 0.000066 |
| stage/sql/end | 0.000005 |
| stage/sql/query end | 0.000008 |
| stage/sql/closing tables | 0.000013 |
| stage/sql/freeing items | 0.000011 |
| stage/sql/cleaning up | 0.000001 |
+——————————–+———-+
15 rows in set (0.01 sec)

如上,实现了通过 Performance Schema 来查询 profileing 相关信息,最终能看到的选项跟 show profile 显示的选项几乎一样,只是各项的值好像不太一致。

看完了这篇文章,相信你对“如何使用 Performance Schema 查看 Profiling”有了一定的了解,如果想了解更多相关知识,欢迎关注丸趣 TV 行业资讯频道,感谢各位的阅读!

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-07-27发表,共计4274字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)
主站蜘蛛池模板: 成人精品一区二区三区中文字幕 | 国产精品国产精品偷麻豆 | 国产无遮挡18禁网站免费 | 日韩 欧美 亚洲 | 国产欧美中文字幕 | 天天爱天天做天天爽 | 免费一级网站 | 久久久在线视频精品免费观看 | 国产女女做受ⅹxx高潮 | sihu影院永久在线影院 | 国产三级在线观看免费 | 国产免费人成视频在线观看 | 亚洲无亚洲人成网站77777 | 国产一级高清视频 | 内射中出日韩无国产剧情 | 欧美成在人线a免费 | 国产三级久久久精品麻豆三级 | 日韩精品福利在线 | 久久女同互慰一区二区三区 | 亚洲一区综合在线播放 | 日韩中文字幕精品一区在线 | 国产精品一区二区三 | 午夜福利1000集在线观看 | 亲近乱子伦免费视频 | a免费在线观看视频 | 久久久久久av无码免费看大片 | 欧美变态捆绑在线dvd | 日韩亚洲人成网站在线播放 | 久久久久久久性高清毛片 | 奇米777狠狠色噜噜狠狠狠 | 亚洲精品 欧美 | 四虎影视在线影院www | 亚洲午夜久久久久久噜噜噜 | 少妇无码av无码一区 | 久久国产精品偷任你爽任你 | 天天av天天av天天透 | 久久国产午夜精品理论篇小说 | 久久一区二区三区不卡 | 日本亲近相奷中文字幕 | 国产成人无码av片在线观看不卡 | 久久99国产精品二区不卡 |