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

如何使用Performance Schema查看Profiling

104次阅读
没有评论

共计 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字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)
主站蜘蛛池模板: 欧美一二三区 | 天堂а√在线最新版中文在线 | 天天摸天天做天天爽在线 | 午夜啪视频 | 亚洲av成人无码网天堂 | 特黄特色大片免费视频播放 | 午夜理伦片免费 | 久久视频精品53在线观看 | 91精选在线观看 | 四虎免费在线播放 | 国产日韩精品欧美一区喷水 | 四虎在线网站 | 一级一级特黄女人精品毛片 | 久久国内精品自在自线软件 | 91成人免费观看网站 | 日本高清视频一区二区 | 亚洲色图欧美视频 | 午夜影院在线免费 | 日韩乱码人妻无码中文字幕 | 一级做a爱片特黄在线观看免费看 | 精品国产自在现线看 | 亚洲国产精品无码久久一区二区 | 人人爽视频 | 久久久久久亚洲av无码精品专口 | 午夜免费剧场 | 人人妻人人澡人人爽超污 | 日日好吊妞| 18禁男女爽爽爽午夜网站免费 | 亚洲天堂2017无码中文 | 扒开女人内裤猛进猛出免费视频 | 精品人妻伦九区久久aaa片69 | 中文字幕丰满乱孑伦无码专区 | 久久久夜色精品国产噜噜 | 久草精品视频在线播放 | 日本一区二区三区免费高清 | 久久久亚洲av波多野结衣 | 亚洲在线影院 | 日本免费精品一区二区三区 | 一区二区中文字幕在线观看 | 色婷婷5月| 产精品无码久久_亚洲国产精 |