MySQL数据回溯方法、存储介质技术

技术编号:21605440 阅读:43 留言:0更新日期:2019-07-13 18:11
本发明专利技术提供MySQL数据回溯的方法、存储介质,方法包括:S1:获取MySQL执行语句集合;S2:获取目标数据对应的目标数据字段;S3:依据目标数据字段及其对应MySQL的表,获取当前匹配数据字段;S4:将MySQL执行语句集合文末设置为当前匹配起始位置;S5:由当前匹配起始位置开始倒序匹配当前匹配数据字段,获取对应的执行语句;S6:解析执行语句之前的其他执行语句,获取对执行语句内容变更的执行语句;S7:依据获取的执行语句获取最新的匹配数据字段,将S6获取执行语句的位置设置为当前匹配起始位置,返回执行S5;S8:顺序整合获取的执行语句。本发明专利技术便于数据审计、监管,且实现方式更便捷更有效。

MySQL Data Retrospective Method and Storage Media

【技术实现步骤摘要】
MySQL数据回溯方法、存储介质
本专利技术涉及数据库数据分析领域,具体涉及MySQL数据回溯方法、存储介质。
技术介绍
MySQL是一种关系型数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库中,由此增加速度并提高了灵活性。但是,这也同时增加了MySQL数据解析和查询的难度。本专利技术提供一种MySQL数据回溯的方法和对应的存储介质,能够推算MySQL数据的完整变化过程,从而实现MySQL数据变化的回溯,有利于MySQL数据的审计和监管,且相较于现有技术而言,无需业务做任务调整便可实现,更方便、更高效。
技术实现思路
本专利技术所要解决的技术问题是:提供一种MySQL数据回溯的方法和对应的存储介质,能够实现MySQL数据变化的回溯,便于数据审计和监管。为了解决上述技术问题,本专利技术采用的技术方案为:一种MySQL数据回溯的方法,包括:S1:解析数据库binlog日志文件,获取MySQL执行语句集合;S2:查询数据表,获取目标数据对应的目标数据字段;S3:依据所述目标数据字段及其对应MySQL的表,获取当前匹配数据字段;S4:将所述MySQL执行语句集合的文末设置为当前匹配起始位置;S5:由所述当前匹配起始位置开始倒序匹配当前匹配数据字段,获取对应的执行语句;S6:解析所获取的执行语句之前预设范围内的其他执行语句,从所述其他执行语句中获取对应所述所获取的执行语句进行内容变更的执行语句;S7:依据S6步骤获取的执行语句获取最新的匹配数据字段,并将S6步骤获取执行语句的位置设置为当前匹配起始位置,然后返回执行S5步骤,直至无法再获取执行语句;S8:顺序整合每次获取的执行语句,获取目标数据的变化过程。本专利技术提供的另一个技术方案为:一种计算机可读存储介质,其上存储有计算机程序,所述程序在被处理器执行时,能够实现上述MySQL数据回溯的方法所包含的步骤。本专利技术的有益效果在于:本专利技术能够通过MySQL日志推算数据变化过程,回溯数据生成的全过程,从而为数据审计、监管数据变化提供支持。具体由目标数据字段及其对应MySQL的表获取匹配数据字段后与解析得到的MySQL执行语句集合进行匹配来获取相关执行语句,再逐步逆向推算前一次的数据变化记录信息,以回溯目标数据的完整变化过程。本专利技术区别于现有技术,无需业务做任务调整就能获取目标数据的变化过程,能更方便、更有效地实现数据审计和监管。附图说明图1为本专利技术实施例一种MySQL数据回溯的方法的流程示意图;图2为本专利技术实施例一的MySQL数据回溯的方法的流程示意图。具体实施方式为详细说明本专利技术的
技术实现思路
、所实现目的及效果,以下结合实施方式并配合附图予以说明。本专利技术最关键的构思在于:通过MySQL日志推算数据变化过程,回溯数据生成的全过程,从而为数据审计、监管数据变化提供支持。本专利技术涉及的技术术语解释:请参照图1,本专利技术提供一种MySQL数据回溯的方法,包括:S1:解析数据库binlog日志文件,获取MySQL执行语句集合;S2:查询数据表,获取目标数据对应的目标数据字段;S3:依据所述目标数据字段及其对应MySQL的表,获取当前匹配数据字段;S4:将所述MySQL执行语句集合的文末设置为当前匹配起始位置;S5:由所述当前匹配起始位置开始倒序匹配当前匹配数据字段,获取对应的执行语句;S6:解析所获取的执行语句之前预设范围内的其他执行语句,从所述其他执行语句中获取对应所述所获取的执行语句进行内容变更的执行语句;S7:依据S6步骤获取的执行语句获取最新的匹配数据字段,并将S6步骤获取执行语句的位置设置为当前匹配起始位置,然后返回执行S5步骤,直至无法再获取执行语句;S8:顺序整合每次获取的执行语句,获取目标数据的变化过程。从上述描述可知,本专利技术的有益效果在于:能够通过MySQL日志推算数据变化过程,回溯数据生成的全过程,从而为数据审计、监管数据变化提供支持。具体由目标数据字段及其对应MySQL的表获取匹配数据字段后与解析得到的MySQL执行语句集合进行匹配来获取相关执行语句,再逐步逆向推算前一次的数据变化记录信息,以回溯目标数据的完整变化过程。本专利技术区别于现有技术,无需业务做任务调整就能获取目标数据的变化过程,能更方便、更有效地实现数据审计和监管。进一步的,所述S1:解析数据库binlog日志文件,获取MySQL执行语句集合,具体为:S10:依据目标数据确定目标时间段;S11:解析对应所述目标时间段的数据库binlog日志文件,获取对应的MySQL执行语句集合。由上述描述可知,能够针对性地只对与目标时间段对应的数据库binlog日志文件进行解析,提高文件解析效率和数据追踪效率。进一步的,所述目标数据包括用户账号及其关联数据;所述S2:查询数据表,获取目标数据对应的目标数据字段;具体为:S21:依据用户账号查询数据库的用户数据表,获取用户账号对应的目标数据字段;S22:获取目标数据对应的包括所述用户账号对应的目标数据字段和所述关联数据的目标数据字段。由上述描述可知,能够以用户账号对应MySQL执行语句的表述方式(键值)作为匹配条件之一,更准确地锁定用户账号的关联数据的变化过程。进一步的,所述S3:依据所述目标数据字段及其对应MySQL的表,获取当前匹配数据字段;具体为:S3:获取由用户账号、所述关联数据及其对应MySQL的表组成的当前匹配数据字段。由上述描述可知,匹配条件包括用户账号、关联数据及其对应其对应MySQL的表构成,匹配的效率更高、匹配的针对性更高。进一步的,若首次执行所述S5步骤的匹配结果若为无法获取对应的执行语句,则结束流程;若能获取对应的执行语句,则继续执行S6步骤。由上述描述可知,本专利技术对应数据回溯为逆序匹配的过程,若匹配至MySQL执行语句集合的第一条执行语句均无法匹配成功,则数据回溯失败,及时结束流程;该结果对应目标数据出错,如关联数据与用户账号无法对应、用户账号出错等问题;且对应该匹配结果的数据回溯结果有效,同样具备参考意义,例如,可据此判定在所述用户账号准确无误的情况下,判定关联数据与用户账号不具备对应性。而匹配成功的情况,则可以依据所获取的执行语句推算下一次变化。进一步的,S7:依据S6步骤获取的执行语句获取最新的匹配数据字段,并将S6步骤获取执行语句的位置设置为当前匹配起始位置,然后返回执行S5步骤,直至无法再获取执行语句;具体为:S71:依据S6步骤获取的执行语句获取所述关联数据对应S3步骤所述表的键值,并依据所述键值与所述表获取最新的匹配数据字段;S72:将获取执行语句的位置设置为当前匹配起始位置;S73:由所述MySQL执行语句集合的当前匹配起始位置开始倒序与当前匹配数据字段进行匹配,获取对应的执行语句;S74:解析S73步骤所获取的执行语句之前预设行数内的其他执行语句,判断是否能从所述其他执行语句中获取对应S73所获取的执行语句进行内容变更的执行语句;若是,则执行S75;若否,则执行S8;S75:依据S74步骤获取的执行语句获取最新的匹配数据字段,返回执行S72步骤。由上述描述可知,通过上述步骤,不断的循环重新确定匹配数据字段、匹配、解析、获取执行语句的步骤,能准确无误地逆向推算出目标数据的来源。进一步的,所述关联数据为经验值本文档来自技高网
...

【技术保护点】
1.一种MySQL数据回溯的方法,其特征在于,包括:S1:解析数据库binlog日志文件,获取MySQL执行语句集合;S2:查询数据表,获取目标数据对应的目标数据字段;S3:依据所述目标数据字段及其对应MySQL的表,获取当前匹配数据字段;S4:将所述MySQL执行语句集合的文末设置为当前匹配起始位置;S5:由所述当前匹配起始位置开始倒序匹配当前匹配数据字段,获取对应的执行语句;S6:解析所获取的执行语句之前预设范围内的其他执行语句,从所述其他执行语句中获取对应所述所获取的执行语句进行内容变更的执行语句;S7:依据S6步骤获取的执行语句获取最新的匹配数据字段,并将S6步骤获取执行语句的位置设置为当前匹配起始位置,然后返回执行S5步骤,直至无法再获取执行语句;S8:顺序整合每次获取的执行语句,获取目标数据的变化过程。

【技术特征摘要】
1.一种MySQL数据回溯的方法,其特征在于,包括:S1:解析数据库binlog日志文件,获取MySQL执行语句集合;S2:查询数据表,获取目标数据对应的目标数据字段;S3:依据所述目标数据字段及其对应MySQL的表,获取当前匹配数据字段;S4:将所述MySQL执行语句集合的文末设置为当前匹配起始位置;S5:由所述当前匹配起始位置开始倒序匹配当前匹配数据字段,获取对应的执行语句;S6:解析所获取的执行语句之前预设范围内的其他执行语句,从所述其他执行语句中获取对应所述所获取的执行语句进行内容变更的执行语句;S7:依据S6步骤获取的执行语句获取最新的匹配数据字段,并将S6步骤获取执行语句的位置设置为当前匹配起始位置,然后返回执行S5步骤,直至无法再获取执行语句;S8:顺序整合每次获取的执行语句,获取目标数据的变化过程。2.如权利要求1所述的一种MySQL数据回溯的方法,其特征在于,所述S1:解析数据库binlog日志文件,获取MySQL执行语句集合,具体为:S10:依据目标数据确定目标时间段;S11:解析对应所述目标时间段的数据库binlog日志文件,获取对应的MySQL执行语句集合。3.如权利要求1所述的一种MySQL数据回溯的方法,其特征在于,所述目标数据包括用户账号及其关联数据;所述S2:查询数据表,获取目标数据对应的目标数据字段;具体为:S21:依据用户账号查询数据库的用户数据表,获取用户账号对应的目标数据字段;S22:获取目标数据对应的包括所述用户账号对应的目标数据字段和所述关联数据的目标数据字段。4.如权利要求3所述的一种MySQL数据回溯的方法,其特征在于,所述...

【专利技术属性】
技术研发人员:刘德建詹彦安范福生黄钟贵江洪郑含章李正郑涛岳万恕陈宏展
申请(专利权)人:福建省天奕网络科技有限公司
类型:发明
国别省市:福建,35

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

1