如何有效的监控单点,集群的mysql
Mysql作为使用非常广泛的数据库,确实给我们带来了很多帮助,就像任何软件系统一样,一旦正式投入生产环境,那监控手段就不可或缺。如何有效的监控Mysql的运行情况,尤其是在复杂IT环境下就更显得迫切了,如Mysql集群部署; 1、单点Mysql的监控 到底一个Mysql服务我们应该监控哪些指标呢?每个人可能都有不同的见解,但下面这些指标是基本的: 当前已打开连接数:表示当前打开的数据库连接; 启动以来同时处理的最大连接数:表示自从数据库启动来同时处理的最大连接请求,这个值对于提供数据库的处理能力比较重要,下面是两个优化的量化经验: 假设数值tmpPercent =启动以来同时处理的最大连接数/ 设置的最大连接数 l 如果tmpPercent <= 0.1,则mySQL服务器最大连接数设置的过高了 l 如果tmpPercent > 90,则mySQL服务器最大连接数设置的过低了 锁等待率:如果该值 > 0.02,则mySQL服务器需要等待的表锁数有点多了, 如果当前数据库表类型是MyISAM请最好换成InnoDB类型; 表扫描率:如果该值 > 4000,则mySQL进行了太多表扫描, 很有可能是索引没建好, 增加read_buffer_size值会有一些好处, 但最好不要超过8MB; 北京运维技术出品的EOMP作为一个IT监控平台,提供了很多实用功能来帮助用户有效的运维各种IT资源,下面我们就如何通过EOMP对mysqlt进行有效监控做一个详细介绍: EOMP里mysql的详细监控界面如下: 上图中做标记的4个地方,都是EOMP反映给用户的重要监控信息。同时EOMP还可以监控Mysql中的数据库表信息,如下图: 通过对这些关键指标进行阀值、故障通知等设置,就可以在严重问题出现前有效的进行处理。EOMP阀值的设置很简单,在图中任何一个做标记*的监控指标处或是文本框没有灰掉的地方,点击鼠标右键弹出菜单,进行相关设置,如我们想对‘正在使用的连接数’这个指标进行如下设置:在上午8:00-下午7:00间,任意5分钟内,该指标至少有3次超过100,就发出问题级别的告警,并通过Email、手机短信等方式通知相关人员;下面是具体阀值和故障通知设置截图: 并且如果‘正在使用的连接数’确实发生了故障,我们可以通过刚才弹出菜单中的‘历史数据查询’功能,对这个监控指标的所有历史数据进行故障分析,下图是一次查询结果: 2、集群Mysql的监控 对于复杂的集群Mysql,就应该把它们通过某种方式放到一起来共同运维和监控,EOMP提供的‘视图’功能,就能很好完成这个任务,下图是EOMP一个简单Mysql集群的‘监控视图’: 上图中,我们把集群的两个Mysql服务放到一张视图里,同时把它们的一些关键监控指标也放到这张视图里,如响应时间、正在工作线程数等,通过这样一张视图,用户可以把所有反映这个Mysql集群健康情况的监控信息都放到一起,这在很大程度上方便用户的监控。 EOMP是以‘视图’为其设计核心,所以它的视图配置非常灵活,既可以是整个一个Mysql服务,也可以是某个Mysql服务的一个监控指标。越是复杂的监控要求,越是能体现出这种内在设计的灵活性。 ‘视图’不仅仅是个展现的窗口,它是个监控实体,如下图EOMP的首页所示,任何故障信息都是以‘视图’为载体的,这样用户在任何时候都可以看到自己能理解的监控信息,而不是什么什么设备或服务等。