在之前的 MySQL 8 Performance Schema 如何帮助诊断查询死锁文章中,我们上了一个关于互斥锁(Mutex)和线程(Thread)的速成课程,了解了 MySQL Performance Schema,并运行了一些查询以调查性能瓶颈。在本篇文章中,将使用 Navicat Monitor 提供的另一种调查瓶颈和死锁的方法。
Navicat Monitor 的概览
Navicat Monitor 是监控 MySQL / MariaDB 的无代理远程服务器监控工具,其中包含的功能使监控数据库(DB)实例发挥最大效用和更轻松。术语“无代理”是关键,因为它描述了一种基于服务器的架构,不需要在被监视的服务器上安装任何软件。此外,Navicat Monitor 可通过网络浏览器随时随地访问,从而提供无障碍访问,让你全天候轻松无缝地掌握全球服务器的状况。
它拥有众多功能。以下是其中一些:
实时的交互式概览
在一个基于网络的中央界面上查看所有已注册的 MySQL 或 MariaDB 实例和可用的组
监控主机上实时的 MySQL 或 MariaDB 指标、CPU、内存和交换使用率
浏览一小时的历史指标
实例详细信息
无代理的远程监控
生成服务器性能指标的报表
将报表导出为 PDF 文件
警报
预先配置超过 40 个可完全自定义的警报策略
获取有关如何提高服务器性能的有用建议
与可自定义的阈值一起使用 SMTP、短信、SNMP 陷阱和 Slack
查询分析器
分析慢速查询日志和常规查询日志
找出对系统影响最大的查询
存储历史记录以诊断死锁问题
复制监控
显示复制拓扑并能快速查看每个复制的状态
提供用于复制故障排除的复制错误历史记录
发现任何复制问题时发送警报
安全性监控
控制访问监控的实例和功能
通过发送警报提高 MySQL 或 MariaDB 安全性
检测 MySQL 或 MariaDB 黑客活动
用户管理
基于角色的访问控制
OpenLDAP 或 Active Directory 的用户集成
通过 IP 地址限制登录或角色的访问
配置导出和还原
保存最近的配置并随时还原
将 Navicat Monitor 迁移到新主机
允许存储库数据库迁移
发现死锁查询
“查询分析器”显示所有正在执行的查询的摘要信息,并帮助你识别有问题的查询,例如识别最多累积运行时间的查询,慢速查询,以及当两个或更多查询互相永久阻止時检测到死锁。你可在屏幕的顶部找到“最新的死锁查询”:
你可以点击“查看全部”按钮查看以前的死锁。这样做会打开“死锁”页面。它显示在已选择实例上检测到的所有死锁:
所有受监控的实例都显示在左侧窗格中。选择一个实例来显示其死锁。你可以在“搜索死锁”框中输入搜索字符串以筛选列表。
默认情况下,死锁列表每 5 秒自动刷新一次。如果你想更改自动刷新时间,请使用“刷新时间”下拉菜单。若要暂停自动刷新,请点击“暂停”按钮。
你还可以点击“X / 页”来设置显示的死锁数量。
总结
在今天的文章中,我们学习了如何使用 Navicat Monitor 找出 MySQL 8 的瓶颈和死锁。考虑购买 Navicat Monitor for MySQL/MariaDB?它现在提供每月和每年订阅!