一种基于mysql数据库的sql信息采集审计系统的制作方法

文档序号:6515376阅读:1296来源:国知局
一种基于mysql数据库的sql信息采集审计系统的制作方法
【专利摘要】本发明公开了一种基于MYSQL数据库的SQL信息采集审计系统,包括:MYSQL通讯报文分析模块,通过分析MYSQL数据库的应用系统客户端与MYSQL数据库之间的通讯协议,将通讯报文的SQL语句、SQL语句所带的参数、SQL语句的执行结果完整的分析出来,为其他模块提供数据来源;SQL语句语法解析模块,将SQL语句进行有效的结构分解,形成SQL操作日志库;MYSQL通讯错误代码模块,建立一个MYSQL数据库错误代码库,通过将数据库访问请求及请求的响应结果与MYSQL数据库错误代码库结合起来,分析基于MYSQL数据库的应用系统运行状况。本发明不需要对应用系统进行任何的配置改动和变更,对应用系统的正常运行没有任何影响,可以给用户、应用系统提供商及时了解系统运行状态提供了有力的支持。
【专利说明】—种基于MYSQL数据库的SQL信息采集审计系统
【技术领域】
[0001]本发明涉及一种信息采集审计系统,具体是涉及一种基于MYSQL数据库的SQL信息米集申计系统。
【背景技术】
[0002]在基于TCP网络、使用MYSQL数据库服务器的应用系统中,由于客户机较多,访问量和数据传输量都较大。作为用户,很难在系统层面对MYSQL数据库的访问使用情况进行全面的分析,从而了解应用系统的运行状况。这样,在客户机与数据库服务器之间的通讯过程,几乎是一个黑匣子。在应用系统发生异常状况时,用户也没有该系统的历史运行状态。
[0003]一些传统的方法是修改MYSQL数据库服务器主机的一些配置,使数据库服务器主动记录一些访问日志,以备事后分析。但MYSQL数据库的这些配置变更,往往会大幅度的影响到MYSQL数据库服务器的运行效率,从而影响整个应用系统的性能。目前,已经有一些基于网络的采集技术,如sniffer,这为通过网络方式,观察应用系统中数据库应用客户端与MYSQL数据库服务器之间的网络通讯状况,从而进行进一步深度分析提供了基本的技术支持。

【发明内容】

[0004]本发明所要解决的技术问题是,克服现有技术的缺点,提供一种不需要对应用系统进行任何的配置改动和变更,对应用系统的正常运行没有任何影响,可以对应用系统中SQL行为有全面的了解,给用户、应用系统提供商及时了解系统运行状态提供了有力的支持的基于MYSQL数据库的SQL信息采集审计系统。
[0005]为了解决以上技术问题,本发明提供了一种基于MYSQL数据库的SQL信息采集审计系统,包括MYSQL通讯报文分析模块、SQL语句语法解析模块与MYSQL通讯错误代码模块。
[0006]MYSQL通讯报文分析模块通过对通讯报文进行分析,获得通讯报文的SQL语句、SQL语句参数、SQL语句的执行结果,其包括以下子模块:基本通讯报文结构分析子模块,用以对通讯报文中包含的基本通讯报文结构进行分析;Login登录协议结构分析子模块,用以对通讯报文中包含的Login登录协议结构进行分析;SQL请求报文结构分析子模块,用以对通讯报文中包含的SQL请求报文结构进行分析;RPC远程调用报文结构分析子模块,用以对通讯报文中包含的RPC远程调用报文结构进行分析;SQL执行返回报文结构分析子模块,用以对通讯报文中包含的SQL执行返回报文结构进行分析;SQL参数结构分析子模块,用以对通讯报文中包含的SQL参数结构进行分析。
[0007]SQL语句语法解析模块包括:SQL操作对象分析子模块,用以将操作对象从SQL语句中分离出来;SQL操作日志库,用以保存MYSQL通讯报文分析模块获得的SQL语句、SQL语句参数、SQL语句执行结果和SQL操作对象分析子模块对SQL语句语法解析后取到的SQL语句的各个组成部分;SQL操作统计子模块,用以对SQL操作日志进行统计;SQL执行结果分析子模块;用以在SQL执行结果分析子模块在SQL操作执行异常时,将异常情况进行单独分析和保存。
[0008]MYSQL通讯错误代码模块是一个MYSQL数据库错误代码库,通过将数据库访问请求及请求的响应结果与MYSQL数据库错误代码库结合起来,分析某个基于MYSQL数据库的应用系统的运行状况,当一个SQL访问请求的响应结果中包含错误,则在SQL执行返回报文结构中取到错误代号,根据错误代号,结合错误代码库,知道该应用系统运行中出现了某种错误。
[0009]本发明进一步限定的技术方案是:前述SQL语句语法解析模块中,SQL操作统计子模块将SQL语句分为以下类别:数据库定义类操作、数据操纵类操作、数据库控制类操作和事务控制类操作,并分类统计。分类统计的具体内容为:
[0010]
【权利要求】
1.一种基于MYSQL数据库的SQL信息采集审计系统,其特征在于:包括MYSQL通讯报文分析模块、SQL语句语法解析模块与MYSQL通讯错误代码模块; 所述MYSQL通讯报文分析模块通过对通讯报文进行分析,获得通讯报文的SQL语句、SQL语句参数、SQL语句的执行结果,其包括以下子模块:基本通讯报文结构分析子模块,用以对通讯报文中包含的基本通讯报文结构进行分析;Login登录协议结构分析子模块,用以对通讯报文中包含的Login登录协议结构进行分析;SQL请求报文结构分析子模块,用以对通讯报文中包含的SQL请求报文结构进行分析;RPC远程调用报文结构分析子模块,用以对通讯报文中包含的RPC远程调用报文结构进行分析;SQL执行返回报文结构分析子模块,用以对通讯报文中包含的SQL执行返回报文结构进行分析;SQL参数结构分析子模块,用以对通讯报文中包含的SQL参数结构进行分析; 所述SQL语句语法解析模块包括:SQL操作对象分析子模块,用以将操作对象从SQL语句中分离出来;SQL操作日志库,用以保存MYSQL通讯报文分析模块获得的SQL语句、SQL语句参数、SQL语句执行结果和SQL操作对象分析子模块对SQL语句语法解析后取到的SQL语句的各个组成部分;SQL操作统计子模块,用以对SQL操作日志进行统计;SQL执行结果分析子模块;用以在SQL执行结果分析子模块在SQL操作执行异常时,将异常情况进行单独分析和保存; 所述MYSQL通讯错误代码模块是一个MYSQL数据库错误代码库,通过将数据库访问请求及请求的响应结果与MYSQL数据库错误代码库结合起来,分析某个基于MYSQL数据库的应用系统的运行状况,当一个SQL访问请求的响应结果中包含错误,则在SQL执行返回报文结构中取到错误代号,根据错误代号,结合错误代码库,知道该应用系统运行中出现了某种错误。
2.根据权利要求1所述的基于MYSQL数据库的SQL信息采集审计系统,其特征在于:SQL语句语法解析模块中,SQL操作统计子模块将SQL语句分为以下类别:数据库定义类操作、数据操纵类操作、数据库控制类操作和事务控制类操作,并分类统计。
3.根据权利要求2所述的基于MYSQL数据库的SQL信息采集审计系统,其特征在于:SQL语句语法解析模块中,SQL操作统计子模块将SQL语句分类统计的具体内容为:
4.根据权利要求1至3中任一所述的基于MYSQL数据库的SQL信息采集审计系统,其特征在于=MYSQL通讯报文分析模块中,基本通讯报文结构分析子模块包括以下内容的分析:
5.根据权利要求1至3中任一所述的基于MYSQL数据库的SQL信息采集审计系统,其特征在于=MYSQL通讯报文分析模块中,RPC远程调用报文结构分析子模块中,RPC名称的长度与对应的RPC名称具体为:_

6.根据权利要求1至3中任一所述的基于MYSQL数据库的SQL信息采集审计系统,其特征在于=MYSQL通讯报文分析模块中,SQL执行返回报文结构分析子模块具体结构分析协议为:
7.根据权利要求1至3中任一所述的基于MYSQL数据库的SQL信息采集审计系统,其特征在于=MYSQL通讯报文分析模块中,SQL参数结构分析子模块包括参数的基本结构分析和参数类型的结构分析两部分,具体分析内容为: 参数的基本结构:
【文档编号】G06F17/30GK103488797SQ201310479392
【公开日】2014年1月1日 申请日期:2013年10月14日 优先权日:2013年10月14日
【发明者】李曙强, 蒋树春, 吕兵 申请人:德讯科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1