189 8069 5689

如何掌握ps-top用于MySQL的数据库top工具

本篇内容介绍了“如何掌握ps-top用于MySQL的数据库top工具”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

在宿迁等地区,都构建了全面的区域性战略布局,加强发展的系统性、市场前瞻性、产品创新能力,以专注、极致的服务理念,为客户提供网站制作、成都网站设计 网站设计制作按需策划,公司网站建设,企业网站建设,品牌网站建设,成都营销网站建设,外贸营销网站建设,宿迁网站建设费用合理。

熟悉Linux的同学都很喜欢top命令,可以让我们很方便快捷的一键获取系统运行状态。除了系统状态,很多人可能也希望能一键获得数据库的运行状态,很多人会用show  profile或者performance_schema数据库获取各种信息。但是很方便和直接。

本文虫虫给大家介绍一个命令行工具ps-top,可从MySQL  5.6+的performance_schema数据库中收集信息,并使用该信息实时显示服务器负载。数据以表或文件名显示,实时显示在选择,插入,更新或删除活动时候信息情况;视图显示用户活动,显示使用相同用户名连接的不同主机的数量以及这些用户的活动视图;关于互斥、锁表和sql阶段计时的统计信息视图。

如何掌握ps-top用于MySQL的数据库top工具

安装

和一般的golang工具一样,ps-top安装很简单,直接用go get就可以下载、编译,安装好:

go get -u github.com/sjmudd/ps-top/cmd/ps-top或 go get -u github.com/sjmudd/ps-top/cmd/ps-stats
如何掌握ps-top用于MySQL的数据库top工具

这样就会直接安装下载工具及其依赖项,安装后的二进制文件在$GOPATH/bin/目录。如果该路径在系统PATH设置中,则无需指定任何特定路径即可直接运行程序。

访问MySQL

可以通过以下方法之一访问MySQL:

  • 默认使用文件~/.my.cnf。

  • 制定cnf文件,通过--defaults-file=/path/to/.my.cnf。

  • 使用--host=somehost --port=999 --user=someuser --password=somepass连接到主机

  • 通过本机socket连接 --socket=/path/to/mysql.sock --user=someuser  --password=somepass

  • 如果未指定,则用户默认为的内容$USER。如果未指定端口,则默认为3306。

可以通过命令行选项--use-environment  ps-top或者ps-stats,则在环境变量中查找MYSQL_DSN的账号信息去连接Mysql。MYSQL_DSN格式为式:

user:pass@tcp(host:port)/performance_schema

这样就避免在命令行中直接显示账号和密码,防止信息泄露。

MySQL/MariaDB配置

performance_schema数据库必须配置为支持ps-top。默认情况下,在MySQL上会启用此功能。MariaDB> =  10.0.12上则禁用此功能。因此,需额外配置启用,在/etc/my.cnf中,设置:

performance_schema = 1

然后重新启动MariaDB才能生效。

ps-top和ps-stats需要问performance_schema表的SELECT权限。如果无法访问所需表,它们将不会运行。

setup_instruments:查看mutex_latency或stages_latency  根据需要修改改配置,保证用户有权限执行此操作。如果服务器,--read-only或者没有足够的权限来更改这些表,则这些视图可能为空。如果在启动时成功更新了表,则停止ps-top之前,该setup_instruments配置会将其恢复为原始设置。

视图

ps-top和ps-stats可以显示7个不同的数据视图,这些视图默认情况下每秒更新一次。这7个视图为:

table_latency:表等待执行操作的时间显示活动。

如何掌握ps-top用于MySQL的数据库top工具

table_ops:按MySQL执行的活动数显示活动。

如何掌握ps-top用于MySQL的数据库top工具

file_io_latency:显示MySQL在文件I/O上花费的时间。

如何掌握ps-top用于MySQL的数据库top工具

table_lock_latency:根据表锁显示顺序

如何掌握ps-top用于MySQL的数据库top工具

user_latency:根据用户运行查询的时间或用户与MySQL的连接数显示排序。它提供了一些信息,还显示了总的空闲时间,因为这表明可能有过长的空闲查询,如果有堆积,这里的值之和可能很有趣。

如何掌握ps-top用于MySQL的数据库top工具

mutex_latency:按互斥锁延迟显示排序。

如何掌握ps-top用于MySQL的数据库top工具

SQL Stages_latency:在不同的SQL查询阶段中按时间显示排序。

如何掌握ps-top用于MySQL的数据库top工具

可以更改轮询间隔并在模式之间进行切换。

快捷键

在ps-top模式下,以下按键可以让ps-top在不同模式浏览或更改其行为。

h ?:显示帮助。

如何掌握ps-top用于MySQL的数据库top工具
  • · 将轮询间隔减少1秒(最少1秒)

  • + 将轮询间隔增加1秒

  • q-退出

  • t:在显示自重置ps-top开始以来显示统计信息或您显式重置它们(使用'z')[REL]或显示从MySQL收集的统计信息之间切换[ABS]。

  • z:重置统计信息。那就是您看到的与"重置"统计信息有关的计数器。

  • :更改显示模式:延迟,操作,文件I/O,锁定,用户,互斥,阶段和存储模式。
  • 左箭头:切换到上一个屏幕

  • 向右箭头:切换至下一个屏幕

标准输出模式

ps-stats和,ps-top都具有与相同的视图输出,会定时发送到stdout。默认视图为table_io_latency。可以使用与vmstat相同的方法来调整收集间隔和收集数据的次数。第一个参数是delay(默认为1秒),第二个参数是要进行的迭代次数,如果未提供,则为一直运行。该模式旨在用于使用stdout作为输出媒体来监视ps-top并从中收集数据。

如何掌握ps-top用于MySQL的数据库top工具

相关的命令行选项包括:

  • --count=

    限制迭代次数(默认值:永久运行)
  • --interval=

    设置默认轮询间隔(以秒为单位)
  • --limit=

    限制输出的行数(不包括标题)
  • --stdout 将输出发送到stdout(不是屏幕)

  • --view=

    确定要在ps-时查看的视图顶部开始(默认:table_io_latency)可能的值:table_io_latency,table_io_ops,file_io_latency,table_lock_latency,  user_latency,mutex_latency和stages_latency。
  • --totals 仅显示总计行,而不显示明细。

“如何掌握ps-top用于MySQL的数据库top工具”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注创新互联网站,小编将为大家输出更多高质量的实用文章!


网站名称:如何掌握ps-top用于MySQL的数据库top工具
地址分享:http://cdxtjz.cn/article/ishseh.html

其他资讯