我的编程空间,编程开发者的网络收藏夹
学习永远不晚

MySQL5.7中sys schema视图怎么用

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

MySQL5.7中sys schema视图怎么用

小编给大家分享一下MySQL5.7中sys schema视图怎么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

sys schema视图摘要
    sys schema视图中包含了很多以各种方式总结的Performance Schema表的视图,这些视图大多数都是成对出现,使得每组视图中的一个成员具有与另一个成员相同的名称,加上一个X$前缀。例如host_summary_by_file_io视图汇总按照主机分组的文件I/O延迟。没有X$前缀的视图提供了更加友好且易阅读的数据,X$前缀的视图提供了原始数据,更多用于需要对数据进行处理的其他工具。
视图按照展示信息可以分为如下几类。
主机相关信息:以host_summary开头的视图,主要汇总了IO延迟的信息,从主机、文件事件类型、语句类型等角度展示文件IO的信息。
InnoDB相关信息:以innodb开头的视图,汇总了innodb buffer page信息和事务等待InnoDB锁信息。
IO使用情况:以io开头的视图,总结了io使用者的信息,包括等待I/O的情况、I/O使用量情况,从各个角度分组展示。
内存使用情况:以memory开头的视图,从主机、线程、用户、事件角度展示内存使用情况。
连接与会话信息:其中,processlist和session相关的视图,总结了会话相关信息。
表相关信息:以schema_table开头的视图,从全表扫描、InnoDB缓冲池等方面展示了表统计信息。
索引信息:其中包含index的视图,统计了索引使用情况,以及重复索引和未使用的索引情况。
语句相关信息:以statement开头的视图,统计的规范化后的语句使用情况,包括错误数、警告数、执行全表扫描的、使用临时表、执行排序等信息。
用户的相关信息以user开头的视图,统计了用户使用的文件IO、执行的语句统计信息等。
等待事件相关信息:以wait开头的视图,从主机和事件角度展示等待类事件的延迟情况。
sys schema重点视图的应用场景
查看表的访问量

点击(此处)折叠或打开

  1. mysql> select table_schema,table_name,io_read_requests+io_write_requests as total from schema_table_statistics;

  2. +--------------+--------------------------------+-------+

  3. | table_schema | table_name        | total |

  4. +--------------+--------------------------------+-------+

  5. | sys          | sys_config        | 19 |

  6. | dedecms      | dede_member_group | 13 |

  7. | dedecms      | dede_scores       | 12 |

  8. | dedecms      | dede_ratings      | 12 |

  9. | dedecms      | dede_pwd_tmp      | 12 |

  10. | dedecms      | dede_purview      | 12 |

  11. | dedecms      | dede_plus         | 12 |

    我们可以监控每张表访问量的变化情况,或者监控某个库的访问量变化等。如果某个库、某个表发生变化,DBA能够及时知道每个表的访问情况。
冗余索引与未使用的索引检查

点击(此处)折叠或打开

  1. mysql> select * from sys.schema_redundant_indexes \G

  2. *************************** 1. row ***************************

  3.               table_schema: dedecms

  4.                 table_name: dede_member_group

  5.       redundant_index_name: id

  6.    redundant_index_columns: id

  7. redundant_index_non_unique: 1

  8.        dominant_index_name: PRIMARY

  9.     dominant_index_columns: id

  10.  dominant_index_non_unique: 0

  11.             subpart_exists: 0

  12.             sql_drop_index: ALTER TABLE `dedecms`.`dede_member_group` DROP INDEX `id`

    针对冗余索引,DBA可以及时清理掉,减少磁盘的压力,提高数据库性能。
表自增ID监控
   

点击(此处)折叠或打开

  1. mysql> select * from sys.schema_auto_increment_columns \G

  2. *************************** 1. row ***************************

  3.         table_schema: dedecms

  4.           table_name: dede_sys_enum

  5.          column_name: id

  6.            data_type: smallint

  7.          column_type: smallint(5) unsigned

  8.            is_signed: 0

  9.          is_unsigned: 1

  10.            max_value: 65535

  11.       auto_increment: 20040

  12. auto_increment_ratio: 0.3058

  13. *************************** 2. row ***************************

  14.         table_schema: dedecms

  15.           table_name: dede_member_tj

  16.          column_name: mid

  17.            data_type: mediumint

  18.          column_type: mediumint(8)

  19.            is_signed: 1

  20.          is_unsigned: 0

  21.            max_value: 8388607

  22.       auto_increment: 247352

  23. auto_increment_ratio: 0.0295

    展示了表的自增量列名、数据类型、当前使用量、最大值及使用率情况,极大地方便了DBA快速了解数据库自增量的使用情况。
监控全表扫描的SQL语句

点击(此处)折叠或打开

  1. mysql> select * from sys.statements_with_full_table_scans \G

  2. *************************** 1. row ***************************

  3.                    query: SELECT * FROM `sys_config` LIMIT ?, ...

  4.                       db: sys

  5.               exec_count: 1

  6.            total_latency: 74.62 ms

  7.      no_index_used_count: 1

  8. no_good_index_used_count: 0

  9.        no_index_used_pct: 100

  10.                rows_sent: 6

  11.            rows_examined: 6

  12.            rows_sent_avg: 6

  13.        rows_examined_avg: 6

  14.               first_seen: 2018-03-21 08:52:47

  15.                last_seen: 2018-03-21 08:52:47

  16.                   digest: befd5e5f4382f78675bbc86d495dfac2

  17. *************************** 2. row ***************************

  18.                    query: SELECT `performance_schema` . ... name` . `SUM_TIMER_WAIT` DESC

  19.                       db: sys

  20.               exec_count: 2

  21.            total_latency: 644.19 ms

  22.      no_index_used_count: 2

  23. no_good_index_used_count: 0

  24.        no_index_used_pct: 100

  25.                rows_sent: 155

  26.            rows_examined: 1481

  27.            rows_sent_avg: 78

  28.        rows_examined_avg: 741

  29.               first_seen: 2018-03-22 03:27:54

  30.                last_seen: 2018-03-22 03:44:09

  31.                   digest: 6f58edd9cee71845f592cf5347f8ecd7

  32. *************************** 3. row ***************************

  33.                    query: SELECT * FROM `INNODB_SYS_TABLESPACES

从查询结果中可以看到这些语句执行的次数,其中没有使用索引的次数。

点击(此处)折叠或打开

  1. mysql> select file,avg_read+avg_write as avg_io from sys.io_global_by_file_by_bytes order by avg_io desc limit 10;

  2. +-------------------------------------------------------------+--------+

  3. | file                                                        | avg_io |

  4. +-------------------------------------------------------------+--------+

  5. | @@datadir/mysql/db.MYD                                      | 1464   |

  6. | @@datadir/sys/io_global_by_wait_by_latency.frm              | 1015   |

  7. | @@datadir/sys/user_summary.frm                              | 958    |

  8. | @@datadir/sys/x@0024schema_table_statistics_with_buffer.frm | 955    |

  9. | @@datadir/mysql/tables_priv.MYD                             | 947    |

  10. | @@datadir/sys/x@0024io_global_by_wait_by_bytes.frm          | 943    |

  11. | @@datadir/sys/host_summary_by_statement_type.frm            | 911    |

  12. | @@datadir/sys/user_summary_by_statement_type.frm            | 904    |

  13. | @@datadir/sys/x@0024user_summary.frm                        | 898    |

  14. | @@datadir/sys/io_by_thread_by_latency.frm                   | 897    |

  15. +-------------------------------------------------------------+--------+

    DBA可以通过该查询来大致了解磁盘IO消耗在哪里,哪些文件消耗的最多。
操作风险
    虽然这些视图方便了DBA对数据库的监控,但建议不要大量在线上部署通过查询sys或performance_schema中的表或者视图来完成一些监控,因为查询这些信息时,MySQL会消耗大量的资源去收集相关信息,严重的可能会导致业务请求被阻塞,从而引起故障。

以上是“MySQL5.7中sys schema视图怎么用”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

MySQL5.7中sys schema视图怎么用

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

PL/SQL中的视图与物化视图怎么应用

在PL/SQL中,视图和物化视图是用来简化和优化查询的工具。视图是一个虚拟表,可以像普通表一样被查询,但实际上并不存储任何数据,而是通过查询实时生成数据。物化视图则是一个存储在数据库中的表,存储了查询结果,并定期更新以保持数据的最新性。要
PL/SQL中的视图与物化视图怎么应用
2024-05-08

怎么在SQLite中使用视图

在SQLite中,您可以使用CREATE VIEW语句来创建视图。视图是一个虚拟的表,它是根据SELECT查询语句的结果集创建的。您可以在视图上执行SELECT查询,就像您在普通表上执行查询一样。下面是一个在SQLite中创建视图的示例:
怎么在SQLite中使用视图
2024-03-11

yii视图中怎么使用widget

这篇文章给大家分享的是有关yii视图中怎么使用widget的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。三种yii视图中使用widget的方式一、显示详细信息:二、显示列表,可以进行条件限制和分页:控制器:视图:
2023-06-06

python中sys模块怎么使用

在Python中,sys模块是一个内建模块,提供了与Python解释器相关的功能和变量。要使用sys模块,首先需要导入它,可以使用import sys语句。以下是一些sys模块常用的功能和变量:sys.argv:包含命令行参数的列表。s
2023-10-23

navicat视图怎么用

navicat 视图功能允许用户创建自定义数据视图,以简化数据库中的数据访问和分析:创建视图:打开数据库,右键单击“视图”>“新建视图”,输入视图名称和 sql 查询。视图优势:简化数据访问、提高性能、隐藏复杂查询和提供不同的数据视角。示例
navicat视图怎么用
2024-04-23

navicat怎么用视图

navicat中使用视图什么是视图?视图本质上是数据库中的虚拟表,它从一个或多个表中检索数据,并以特定的方式呈现给用户。视图不会存储实际数据,而是根据查询结果动态生成。在Navicat中创建视图打开数据库连接。右键单击“浏览”面板中
navicat怎么用视图
2024-05-30

Django视图怎么用

这篇文章将为大家详细讲解有关Django视图怎么用,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。一个视图函数或者类,简称视图(view),是一个简单的Python 函数(类),它接受Web请求并且返回We
2023-06-02

ASP.NET Core MVC中的视图怎么用

本篇内容介绍了“ASP.NET Core MVC中的视图怎么用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!ASP.NET Core MVC
2023-06-30

Python Django通用视图和错误视图怎么使用

本文小编为大家详细介绍“Python Django通用视图和错误视图怎么使用”,内容详细,步骤清晰,细节处理妥当,希望这篇“Python Django通用视图和错误视图怎么使用”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习
2023-07-06

怎么在Dreamweaver cs5中使用实时视图

怎么在Dreamweaver cs5中使用实时视图?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。1、打开软件后我们点击菜单栏上方的查看按钮。2、接下来我们就可以点击实时视图显示
2023-06-08

怎么在video中使用canvas截图视频

这篇文章将为大家详细讲解有关怎么在video中使用canvas截图视频,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。利用canvas实现视频截图:接下来就是关键步骤了,但也很简单,那就是使用
2023-06-09

编程热搜

目录