一种通用的轻量级数据库状态监控方法技术

技术编号:7520492 阅读:210 留言:0更新日期:2012-07-12 02:06
本发明专利技术涉及一种通用的轻量级数据库状态监控方法,该方法包括:1)通过监控服务器对对要监控的本地数据库服务器或其他具有访问权限的数据库服务器不同种类的数据库状态信息进行采集;2)将采集的数据存入临时文件并进行格式转换;3)对转换后的数据按照用户配置的时间间隔存储到监控数据库服务器,并生成RRDTOOL数据;4)读取RRDTOOL数据,并生成图片,同时给数据库维护人员发送通知信息。本发明专利技术能够支持多种不同的数据库平台,不同数据库平台的状态监控均可纳入本系统中进行管理。

【技术实现步骤摘要】

本专利技术涉及数据库状态监控方法,特别是涉及。
技术介绍
数据库状态监控是指监控指定的数据库指标,技术管理人员通过监控报表的反馈对数据库的状态进行分析,能有针对性地对数据库和其应用系统进行适当调整,提升服务效率。目前对数据库状态监控常采用的实现方式为预先确定需要监控的服务器地址和数据库类型,选择匹配的监控方案;分别配置监控项,如果有多台服务器,则需要配置多个监控项目;系统调用接口登录到配置好的服务器,收集数据库状态数据;将获取的数据库各项状态值保存至服务器;技术管理人员登录管理接口,查看收集到的指定服务器的状态信息,如果有多个服务器需要监控,则需要分别到不同的接口中查看。但上述所采用的数据库状态统计系统大多只是针对某一款数据库产品,统计信息的收集和展示只针对某一台数据库,而对于多系统多平台的支持较为有限,不利于大型企业维护人员统筹管理。同时,现有的实现方式还存在实时性较差,统计数据的收集时间不可控等问题,有可能出现由于统计时间过短或过长,致使统计结果严重偏离服务器当前实际现状,不能准确反映服务器的实际状态的现象。
技术实现思路
为避免以上现有技术的不足,本专利技术提供。以解决对多种数据库平台及多个数据库服务器配置状态的监控问题。本专利技术的技术方案如下,该方法包括1)通过监控服务器对对要监控的本地数据库服务器或其他具有访问权限的数据库服务器不同种类的数据库状态信息进行采集;2)将采集的数据存入临时文件并进行格式转换;3)对转换后的数据按照用户设置的时间间隔存储到监控数据库服务器,并生成 RRDT00L 数据;4)读取RRDT00L数据,并生成图片,同时给数据库维护人员发送通知信息。进一步,所述的监控服务器上设置有采集接口,该采集接口根据待监控数据库不同的数据库类型进行分类采集。进一步,所述对数据库服务器的状态信息包括服务器的IP端口值和或数据库的类型。进一步,所述对数据库服务器的状态信息进行采集时按照设定的时间频率进行采集。进一步,所述格式转换包括自动对采集的数据提取相应的采集时间、采集数据的 IP地址或按照某个性能指标值对采集数据进行筛选,并将所述的采集时间、采集数据的IP 地址或筛选的数据转变为item&item_value形式。进一步,所述发送通知信息包括发送图片、邮件、报表信息。本专利技术的优点为1.能够支持多种不同的数据库平台,不同数据库平台的状态监控均可纳入本系统中进行管理;2.在配置环节减少了操作步骤,对于企业中广泛存在的多个数据库服务器的情况,只需要在配置文件中增加服务器地址和监控项目即可,而无须针对每个服务器进行重复性单独配置;3.监控方法收集到的状态信息每日自动通过邮件发送至指定邮箱,避免了为浏览不同数据库和不同服务器,而登录不同平台进行重复操作的流程。4.有别于常规监控工具中文字或表格的展示方式,本方法引入了图形化的报表方案,使企业主无须具备专业技术能力,通过浏览和分析图形化报表所体现出的趋势,即可大致了解数据库服务器基本状态信息。附图说明图1 本专利技术方法的流程图; 图2 本专利技术具体实施例示意图。具体实施例方式如图1为本专利技术方法的流程图,本专利技术, 该方法包括1)通过监控服务器对对要监控的本地数据库服务器或其他具有访问权限的数据库服务器的状态信息进行采集;2)将采集的数据存入临时文件并进行格式转换;3)对转换后的数据按照用户配置的时间间隔存储到监控数据库服务器,并生成RRDT00L数据; 4)读取RRDT00L数据,并生成图片,同时给数据库维护人员发送通知信息。所述对数据库服务器的状态信息进行采集时,采集服务器的IP端口值和或数据库的类型。所述对数据库服务器的状态信息进行采集时按照设定的时间频率进行采集。所述格式转换包括对采集的数据提取相应的采集时间、采集数据的IP地址或按照某个性能指标值对采集数据进行筛选。 所述发送通知信息包括发送图片、邮件、报表信息。结合图2,对本专利技术通用的轻量级数据库状态监控方法做详细说明。首先可以部署通过任意一台或多台监控服务器对待监控的数据库服务器的状态信息进行采集,数据库服务器的状态信息包括数据库的IP端口值和或数据库的类型。所述监控服务器上设置有采集接口,该采集接口根据待监控数据库不同的数据库类型进行分类采集。所述采集接口可以放在任何一台服务器上,通常是放在一个固定的服务器上。采集接口上设置有不同的采集模板,对不同的数据库产品区别对待,分别采集不同的数据库状态信息。采集接口在调用采集模板时,根据采集接口中定义的标识来识别数据库的类型,不同数据库类型使用不同的采集模板。所述采集服务器在采集信息时,该采集的信息主要来自于数据库服务器自身提供的信息,例如,对于互联网行业常用的MySQL数据库,可以抓取show global status的返回数据来获取该数据库的状态信息,具体方法是采集时执行mysql命令,而后调用show global status语句,并将结果输出至临时文件;又比如企业常用到的ORACLE数据库,也可以直接抓取oracle数据库动态性能视图v$SySStat中的信息。状态采集程序可以视实际情况,选择在各个被监控的数据库服务器上部署仅监控本地数据库服务的状态,也可以在固定的某个服务器部署,监控所有指定(并拥有访问权限)的数据库服务状态。各个服务器部署的方式比如简单,直接将采集脚本放置在目标服务器的指定位置,并修改连接信息即可;如果在固定节点部署,那么需要额外配置需要采集的服务器列表和连接信息,具体实际方法为,额外增加配置文件,保存所有需要监控服务器列表、端口和服务类型。采集到的信息会被存入临时文件,信息采集脚本被设置为定时执行,采集频率根据实际需求,按照最有助于后期分析的时间间隔进行收集。不同数据库平台,其所提示的数据库服务状态的形式均不一致,但是对采集的数据状态信息抽象化后我们可以将转变为item & item_valUe的形式,这种操作我们将其定义为数据的格式化,也即是用来对收集到的原始数据进行格式化。具体做法是,分析临时文件,按照分隔符拆分,取出具有代表意义的名称,和它对应的状态值,这样即可确保所有的指定均有一个item及其对象的item_value。考虑到采集频率较高时,数据规模将会比较大,可在此处对采集到的数据进行二次过滤,去掉那些不被关注的item ;同时,对于某些数据库没有直接提供的状态指标,比如像read_write_ratio, transaction_per_sec, buffer_hit_radiο 等等极重要的数据库性能指标,也可在此处通过定制的方式生成相应的item_Value。除了对数据进行过滤和补充外,在对采集数据进行格式化数据时,会自动调用数据格式化脚本,一般无须关注和修改,只有当需要新增监控的状态项或过滤规则时才需要修改该脚本。格式化时会将不同数据库类型的状态值,按照配置好的模板转换成通用的SQL 语句,以INSERT语句的形式体现,处理后的结果保存在文件中。为达到最大粒度(指采集到数据的详尽程度)的定制化,每个被监控的数据库的每一个时间点统计到的每个状态值均会生成唯一的一条记录,例如前面收集到的MySQL性能数据1nn0db_data_Written17377拟94272〃,处理并格式化后形本文档来自技高网...

【技术保护点】

【技术特征摘要】

【专利技术属性】
技术研发人员:潘海东梅春李丙洋
申请(专利权)人:互动在线北京科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1
相关领域技术