在我的服务器的每个数据库上监视活动的最佳方法是什么?
我尝试了实时显示活动的 mtop/mytop,但查看在其上执行的所有查询并不是很实际。
我激活了 MySQL 日志,但没有选项可以将它们拆分为每个数据库。
您使用什么工具来监控 MySQL 服务器?
在我的服务器的每个数据库上监视活动的最佳方法是什么?
我尝试了实时显示活动的 mtop/mytop,但查看在其上执行的所有查询并不是很实际。
我激活了 MySQL 日志,但没有选项可以将它们拆分为每个数据库。
您使用什么工具来监控 MySQL 服务器?
我尽量避免在一个实例中拥有多个数据库。相反,我在服务器上设置了多个实例,每个实例都专用于数据库。
MySQL Cacti 模板是一个很好的监控解决方案。如果您是企业客户,那么MySQL Enterprise Monitor可以工作。还可以从 openark 查看mycheckpoint。
编辑
这里有一些在一台服务器上设置多个实例的教程:
您还可以使用MySQL Sandbox,因为它会为您自动执行许多不同的设置。
您必须了解您使用的大多数工具是从哪里获取数据的 -
SHOW ENGINE INNODB STATUS
和SHOW GLOBAL STATUS
. 这些数据根本无法在 MySQL 内部的数据库级别上进行细分。MySQL 5.5、5.6 和 Percona Server 一直在通过performance_schema和userstats等功能改进可用的诊断方面做得很好——但我不知道有任何 GUI/监控工具正在利用它。
我建议安装 Percona Server,并查看 table_statistics: