前言
数据库作为企业最核心的信息资产,在整个企业信息化过程中,位于最核心的地位。数据库的任何运行不正常,运维不得力,都会对整个IT系统造成严重影响。因此,针对数据库系统的运行维护工具,在IT服务管理工具中,占据着非常重要的地位。
当前,市场上出现了很多针对数据库的管理维护工具,总结起来,主要有如下几种:
1、厂商提供的管理工具:数据库厂商在发布数据库产品的时候,必然会附带发布一个针对该数据库的管理维护客户端工具。该工具主要提供操纵控制数据库的功能,比如创建数据库表,管理数据库权限,分配帐号等功能。例如:Oracle SQLPlus,PL/SQL等。
2、通用网管工具:这些工具是独立网管工具厂商,根据数据库厂商提供的SNMP MIB信息,读取数据库提供的SNMP信息,从而监控数据库的基本运行状态。例如:HP OpenView,IBM Tivoli。
3、系统管理工具:此类工具也是独立网管工具厂商,根据数据库厂商提供的第三方开发接口API,在数据库服务器上运行一个Agent,在主机上读取数据库本地的一些信息。这类工具比通用网管工具能够获取更多的信息,也更深入。例如:游龙科技SiteView ECC,CA Willy,美国艾德威特Adventnet OpManager。
4、数据库综合测试仪:和前面三种数据库管理工具不同,该产品不依赖于任何数据库提供的信息,而是独立分析数据库系统的通信协议,通过解析数据库通信协议,能够得到每一步数据库交易的运行状态、性能延时指标、执行结果(成功、失败、失败原因)等信息。并借助于强大的专家知识库,对数据库错误的原因进行深入分析,协助管理人员解决数据库故障。例如:长城新华的UniERM,美国的ClearSight等。
总结起来,这四类工具各自的功能对比如下:
数据库管理工具功能
Oracle SQLPlus
HP OpenView
SiteView
UniERM
创建数据库、表、用户,维护数据库表空间,分配权限
√
支持RFC1697 RDBMS MIB
√
√
待支持
支持Oracle Private MIB
√
√
待支持
数据库CPU、内存、表空间,队列状态等指标(安装Agent)
√
待支持
分析SQL语句执行效率、安全状态、性能指标
√
分析数据库执行故障原因
√
√
安全审计数据库操作过程
√
√
提供语句级的数据库权限控制与管理
√
√
语句级操作性能分析和故障定位
UniERM提供了对数据库的每一个操作(查询、修改、存储过程执行等SQL操作)的响应时间、返回结果的详细分析,通过统计分析这些参数,掌握数据库的运行状态。
同时,将一次业务过程组合成一个SQL语句序列,在业务运行缓慢时,通过对该业务的SQL语句序列进行延时分析,找出运行缓慢的瓶颈,并提供优化的建议措施。
如上图所示,UniERM将一次业务过程,用流程图绘制出来。把每一个执行步骤的时戳延时呈现出来,超出正常范围就告警。这样,当一个业务交易缓慢时,就可以准确定位出这一个交易的哪一个步骤特别缓慢,也就找出了问题的根本原因,采取必要的措施(如对操作表进行分区、分表,建索引,优化键值等措施),来缓解瓶颈。
同时,UniERM通过对每一个SQL执行结果进行分析,能够把数据库返回的SQL执行结果代码分析出来,结合内嵌的数据库专家知识库,关联分析数据库SQL语句执行错误情况,便于维护人员尽快定位到数据库错误,并分析出错误原因。
对数据库业务系统SLA监测
对于以数据库为中心的诸如ERP、OA等系统,数据库系统的SLA服务质量水平,直接关系到整个业务系统的SLA水平。
UniERM通过对数据库系统的响应时间、执行效率、执行成功率等指标,综合形成SLA指标。这样,在进行应用层的服务质量分析、运维人员绩效考核时、IT与业务部门的OLS(SLA)协议签订时,均能够有一个非常好的参考依据。
UniERM主要参数指标
支持的数据库列表
解决数据库故障定位和性能分析的问题
对数据库业务运行过程中的故障进行准确分析
数据查询出错
插入错误
存储过程执行失败
……
实时分析数据库性能情况
SQL语句请求和应答间延时
存储过程执行效率
……
对数据库SLA服务质量水平进行客观评价
数据库执行成功比例
数据库正常运行时间MTBF
……
统计分析数据库业务运行情况
数据库操作类型统计
查询、更新、删除、修改、存储过程
数据库访问频繁的客户端TOPN分析
提供数据业务的服务器TOPN分析
数据库操作性能分析
SQL语句的执行时间
操作性能最差的数据库表TOPN
性能最慢的操作(如查询、执行存储过程等)
数据库操作基线分析
业务增长趋势基线分析
业务故障情况基线分析
提供任意时间段的同比、环比分析
数据库操作故障分析
权限不够
SQL语句错误
操作对象出错
……
忠实记录数据库执行过程,提供安全审计依据
详尽的查询审计功能,可以追踪每个表被操作的纪录。
也可以追踪一个账号或者一个IP操作数据库的任何纪录。
可以根据操作类型来进行查找。
还原数据库所有执行语句
记录执行结果
分析错误原因
给出性能指标评价
记录违规操作全部过程
主动告警非授权访问