当前位置: 首页 - 行业资讯 - 面试官mysql怎样设定可以跟踪语句各阶段效能开销

面试官mysql怎样设定可以跟踪语句各阶段效能开销

2025-01-12 行业资讯 0

面试官:mysql怎样设定可以跟踪语句各阶段效能开销?

概述

PROFILE 可以跟踪查询语句各个阶段 Time,IO,CPU,MEMORY 等资源使用情况,比较详细。所以系统一般不会记录太多。启用是全域性的,所以每个连线都保持语句的资源使用情况。

The SHOW PROFILE and SHOW PROFILES statements display profiling information that indicates resource usage for statements executed during the course of the current session.

1、检视 PROFILE 是否启用

mysql> select @@profiling;

mysql> show variables like %profiling%;

have_profiling :是否可使用 profilingprofiling :是否启用profiling_history_size : 保留最近执行的记录数量。预设15,最大100,0相当于禁用。

2、启用profile(为全域性变数)

mysql> set profiling = 1;

mysql> set profiling_history_size = 10;

3、检视当前连线最近执行语句情况,编号越大为当前最近执行的

mysql> show profiles;

4、检视以上查询开销:SHOW PROFILE Syntax

SHOW PROFILE [type [, type] ... ]

[FOR QUERY n]

[LIMIT row_count [OFFSET offset]]

type:

ALL

BLOCK IO

CONTEXT SWITCHES

CPU

IPC

MEMORY

PAGE FAULTS

SOURCE

SWAPS

预设显示时间资讯,显示了该查询从开始到被清除各个阶段的执行时间。

mysql> show profile;

其他检视方法:

mysql> show profile; #预设显示时间资讯

mysql> show profile CPU,BLOCK IO; #(时间)加上 CPU,BLOCK IO 使用情况

mysql> show profile for query 6; #query_id=6的(时间)资讯

mysql> show profile CPU for query 6; #query_id=6的cpu资讯

mysql> show profile CPU limit 6; #前6个状态资讯(前6行)

mysql> show profile CPU limit 6 offset 2;#第2行起前6个状态资讯(前2~7行)

5、关闭跟踪

set profiling = 0;

set profiling_history_size = 0;

后面会分享更多devops和DBA方面的内容,感兴趣的朋友可以关注下!

标签: 科技行业资讯

上一篇:上海别墅装修设计创意与奢华的完美融合

下一篇:书房装修效果图家居美学设计空间布局规划色彩搭配技巧家具选择建议

相关推荐
推荐资讯
热门文章