The present invention relates to a SQL audit and device. The method includes: acquiring slow log data; from the slow log data extraction SQL statements to be audited and the basic information matching SQL statement; identification and analysis of the SQL statement, to obtain analytical results; one by one according to the audit project audit in the default template, to verify the analytical results and or the basic information, get the audit results; according to the audit results generated in the audit results. The SQL audit and device to the data dictionary of imperfect information database can be extended to the depth of SQL audit SQL statements and basic information, and the SQL statement, the SQL audit is more targeted, and effectively improve the accuracy of the SQL audit.
【技术实现步骤摘要】
SQL审核方法和装置
本专利技术涉及数据库
,特别是涉及一种SQL审核方法和装置。
技术介绍
在数据库的工作中,经常需要对数据库执行的SQL(StructuredQueryLanguage,结构化查询语言)语句进行审核,从而避免性能太差的SQL语句进入生产系统,导致数据库的整体性能降低。对于一些数据字典信息不完善的数据库,例如MySQL、Postgres等数据库的SQL审核,在传统方式中仅能通过SQL脚本解析SQL语句,进行一些简单的审核工作,而无法对SQL进行更深度的审核,例如SQL的执行计划审核等,导致SQL审核不准确。
技术实现思路
基于此,有必要提供一种SQL审核方法,能使一些数据字典信息不完善的数据库对SQL进行更深度的审核,提高SQL审核的准确性。此外,还有必要提供一种SQL审核装置,能使一些数据字典信息不完善的数据库对SQL进行更深度的审核,提高SQL审核的准确性。一种SQL审核方法,包括:获取慢日志数据;从所述慢日志数据中提取待审核的SQL语句及与所述SQL语句匹配的基本信息;识别并解析所述SQL语句,得到解析结果;逐一按照预设的审核模板中的审核项目,对所述解析结果和/或所述基本信息进行审核,得到审核结果;根据所述审核结果生成审核结果集。在其中一个实施例中,所述从所述慢日志数据中提取待审核的SQL语句及与所述SQL语句匹配的基本信息,包括:根据预设格式分析所述慢日志数据,并生成慢日志数据列表;根据所述慢日志数据列表中的字段名从所述慢日志数据列表中提取待审核的SQL语句及与所述SQL语句匹配的基本信息。在其中一个实施例中,所述预设的审核模板 ...
【技术保护点】
一种SQL审核方法,包括:获取慢日志数据;从所述慢日志数据中提取待审核的SQL语句及与所述SQL语句匹配的基本信息;识别并解析所述SQL语句,得到解析结果;逐一按照预设的审核模板中的审核项目,对所述解析结果和/或所述基本信息进行审核,得到审核结果;根据所述审核结果生成审核结果集。
【技术特征摘要】
1.一种SQL审核方法,包括:获取慢日志数据;从所述慢日志数据中提取待审核的SQL语句及与所述SQL语句匹配的基本信息;识别并解析所述SQL语句,得到解析结果;逐一按照预设的审核模板中的审核项目,对所述解析结果和/或所述基本信息进行审核,得到审核结果;根据所述审核结果生成审核结果集。2.根据权利要求1所述的SQL审核方法,其特征在于,所述从所述慢日志数据中提取待审核的SQL语句及与所述SQL语句匹配的基本信息,包括:根据预设格式分析所述慢日志数据,并生成慢日志数据列表;根据所述慢日志数据列表中的字段名从所述慢日志数据列表中提取待审核的SQL语句及与所述SQL语句匹配的基本信息。3.根据权利要求1所述的SQL审核方法,其特征在于,所述预设的审核模板包括执行计划审核模板及SQL语法审核模板;所述逐一按照预设的审核模板中的审核项目,对所述解析结果和/或所述基本信息进行审核,得到审核结果,包括:逐一按照所述执行计划审核模板中的审核项目,提取所述基本信息中与所述审核项目匹配的数据进行审核,得到审核结果;和/或逐一按照所述SQL语法审核模板中的审核项目,对所述解析结果进行语法分析,并根据分析结果进行审核,得到审核结果。4.根据权利要求1至3任一所述的SQL审核方法,其特征在于,在所述根据所述审核结果生成审核结果集的步骤之后,还包括:提取所述审核结果集中审核结果为不通过的SQL语句建立SQL基线;分析所述SQL基线得到SQL审核数据,并展示所述SQL审核数据。5.根据权利要求4所述的SQL审核方法,其特征在于,所述提取所述审核结果集中审核结果为不通过的SQL语句建立SQL基线,包括:提取所述审核结果集中审核结果为不通过的SQL语句;获取所述审核结果为不通过的SQL语句的SQL编号及不通过的审核项目编号;根据所述SQL编号及不通过的审核项目编号判断是否存在匹配的SQL基线,若是,则将所述SQL基线的状态标记为不通过,若否,则根据所述SQL编号及不通过的审核...
【专利技术属性】
技术研发人员:侯松,汪洋,
申请(专利权)人:平安科技深圳有限公司,
类型:发明
国别省市:广东,44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。