我试着用激活的性能模式在rds aurora-mysql上运行一个需要40秒的查询。我希望我可以得到一个完整的细分,在执行时间是花在哪里使用查询 events_statements_history_long
, events_stages_history_long
以及 events_waits_history_long
table。
我已经激活了所有的东西 setup_instruments
& setup_consumers
表只是为了在开始时获得尽可能多的数据。我也更新了 threads
表只监视我的用户线程。
这个 events_statements_history_long
表显示我的查询的总持续时间是40.658176秒,但是当我尝试使用 events_stages_history_long
& events_waits_history_long
使用提供的表格 event_id
我分别只有1.4秒和0.001秒。所以在剩下的39秒里我看不到它在做什么。如果这段时间花在将数据发送回客户机上,我假设它将在 events_stages_history_long
table。
事件\声明\历史\u长
SELECT
EVENT_ID,
TRUNCATE(TIMER_WAIT / 1000000000000, 6) AS Duration,
SQL_TEXT
FROM performance_schema.events_statements_history_long
WHERE SQL_TEXT LIKE '%UNIQUE_THING%';
事件\u阶段\u历史\u长
SELECT
sum(TRUNCATE(TIMER_WAIT / 1000000000000, 6)) AS total
FROM performance_schema.events_stages_history_long
WHERE NESTING_EVENT_ID = 13348585;
事件\u等待\u历史\u长
SELECT sum(TRUNCATE(TIMER_WAIT / 1000000000000, 6)) AS total
FROM performance_schema.events_waits_history_long
WHERE NESTING_EVENT_ID = 13348585;
我是不是漏了什么?谢谢。
暂无答案!
目前还没有任何答案,快来回答吧!