performance_schema 是 MySQL 数据库中的一个内置的系统数据库,最早从MySQL5.5版本产生,这个数据库主要用于收集和存储与数据库性能相关的统计信息和指标。
使用它可以帮助运维人员对数据库性能监控、调优和故障排查提供依据。
收集的事件数据存储在performanceschema数据库的表中,支持select进行查询。
监控文件系统层调用的表 show tables like '%file%';
file_instances
file_summary_by_event_name
file_summary_by_instance
file_instances表列出了性能模式在执行文件 I/O 检测时看到的所有文件。 如果磁盘上的文件从未打开,则不会在file_instances中记录。当文件从磁盘中删除时,它也会从file_instances表中删除对应的记录。
注意:file_instances表不允许使用TRUNCATE TABLE语句
查询
SELECT * from file_instances ;
输出
FILE_NAME EVENT_NAME OPEN_COUNT
D:\mysql-5.7\share\english\errmsg.sys wait/io/file/sql/ERRMSG 0
D:\mysql-5.7\share\charsets\Index.xml wait/io/file/mysys/charset 0
D:\mysql-5.7\data\ibdata1 wait/io/file/innodb/innodb_data_file 3
D:\mysql-5.7\data\ib_logfile0 wait/io/file/innodb/innodb_log_file 2
D:\mysql-5.7\data\ib_logfile1 wait/io/file/innodb/innodb_log_file 2
字段介绍
file_summary_by_event_name 表包含按事件名称汇总的文件事件 ,主要记录代表了每种文件事件的统计信息,包括事件发生的次数、持续时间、操作类型、字节数等。
查询
SELECT * from file_summary_by_event_name ;
输出
EVENT_NAME COUNT_STAR SUM_TIMER_WAIT MIN_TIMER_WAIT AVG_TIMER_WAIT MAX_TIMER_WAIT COUNT_READ SUM_TIMER_READ MIN_TIMER_READ AVG_TIMER_READ MAX_TIMER_READ SUM_NUMBER_OF_BYTES_READ COUNT_WRITE SUM_TIMER_WRITE MIN_TIMER_WRITE AVG_TIMER_WRITE MAX_TIMER_WRITE SUM_NUMBER_OF_BYTES_WRITE COUNT_MISC SUM_TIMER_MISC MIN_TIMER_MISC AVG_TIMER_MISC MAX_TIMER_MISC
wait/io/file/sql/casetest 10 2439994200 0 243999420 569223060 0 0 0 0 0 0 0 0 0 0 0 0 10 2439994200 0 243999420 569223060
wait/io/file/sql/dbopt 6 2361032100 249060 393505140 2246649300 1 62902140 62902140 62902140 62902140 61 0 0 0 0 0 0 5 2298129960 249060 459625740 2246649300
字段介绍
file_summary_by_instance 表中的记录代表了每个文件实例的统计信息,包括事件发生的次数、持续时间、操作类型、字节数等。
查询
SELECT * from file_summary_by_instance ;
输出
FILE_NAME EVENT_NAME OBJECT_INSTANCE_BEGIN COUNT_STAR SUM_TIMER_WAIT MIN_TIMER_WAIT AVG_TIMER_WAIT MAX_TIMER_WAIT COUNT_READ SUM_TIMER_READ MIN_TIMER_READ AVG_TIMER_READ MAX_TIMER_READ SUM_NUMBER_OF_BYTES_READ COUNT_WRITE SUM_TIMER_WRITE MIN_TIMER_WRITE AVG_TIMER_WRITE MAX_TIMER_WRITE SUM_NUMBER_OF_BYTES_WRITE COUNT_MISC SUM_TIMER_MISC MIN_TIMER_MISC AVG_TIMER_MISC MAX_TIMER_MISC
D:\mysql-5.7\share\english\errmsg.sys wait/io/file/sql/ERRMSG 2021156827264 5 1286475540 14383740 257294940 1157210040 3 111450360 14383740 37149840 73705380 78422 0 0 0 0 0 0 2 1175025180 17815140 587512380 1157210040
D:\mysql-5.7\share\charsets\Index.xml wait/io/file/mysys/charset 2021156827968 3 178392480 8448720 59464020 118492920 1 51450840 51450840 51450840 51450840 18710 0 0 0 0 0 0 2 126941640 8448720 63470820 118492920
D:\mysql-5.7\data\ibdata1 wait/io/file/innodb/innodb_data_file 2021156830080 470 167170400460 11810400 355681620 3897831000 460 162059997960 90373500 352303980 3897831000 9650176 3 413583660 11810400 137861220 362910660 65536 7 4696818840 36348900 670973940 1786751820
D:\mysql-5.7\data\ib_logfile0 wait/io/file/innodb/innodb_log_file 2021156830784 18 8899848300 12209400 494435760 2157427020 7 1246485240 76209000 178069080 529882080 70144 4 2578142700 50892660 644535360 2157427020 2048 7 5075220360 12209400 725031300 1461198060
字段介绍
FILE_NAME:File name
EVENT_NAME:Event name
OBJECT_INSTANCE_BEGIN:内存中的地址。与 FILE_NAME 和 EVENT_NAME 一起唯一标识一行。
COUNT_STAR:总结事件的数量
SUM_TIMER_WAIT:计时的汇总事件的总等待时间。
MIN_TIMER_WAIT:计时的汇总事件的最小等待时间。
AVG_TIMER_WAIT:计时的汇总事件的平均等待时间。
MAX_TIMER_WAIT:计时的汇总事件的最大等待时间。
COUNT_READ:所有读取操作的数量,包括 FGETS、FGETC、FREAD 和 READ 。
SUM_TIMER_READ:所有定时读取操作的总等待时间。
MIN_TIMER_READ:所有定时读取操作的最小等待时间。
AVG_TIMER_READ:所有定时读取操作的平均等待时间。
MAX_TIMER_READ:所有定时读取操作的最大等待时间。
SUM_NUMBER_OF_BYTES_READ:通过读取操作读取的字节。
COUNT_WRITE:所有写入操作的数量,包括 FPUTS、FPUTC、FPRINTF、VFPRINTF、FWRITE 和 PWRITE 。
SUM_TIMER_WRITE:计时的所有写操作的总等待时间。
MIN_TIMER_WRITE:所有定时的写操作的最小等待时间。
AVG_TIMER_WRITE:计时的所有写操作的平均等待时间。
MAX_TIMER_WRITE:所有定时的写操作的最大等待时间。
SUM_NUMBER_OF_BYTES_WRITE:通过写操作写入的字节数。
COUNT_MISC:上面未计算的所有其他操作的数量,包括 CREATE、DELETE、OPEN、CLOSE、STREAM_OPEN、STREAM_CLOSE、SEEK、TELL、FLUSH、STAT、FSTAT、CHSIZE、RENAME 和 SYNC 。
SUM_TIMER_MISC:所有计时的杂项操作的总等待时间。
MIN_TIMER_MISC:所有计时的杂项操作的最小等待时间。
AVG_TIMER_MISC:所有计时的杂项操作的平均等待时间。
MAX_TIMER_MISC:所有计时的杂项操作的最大等待时间。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。