本发明涉及数据保护方法,更具体地说是指数据库运维防护方法、装置、计算机设备及存储介质。
背景技术:
1、数据库运维一般采用sql直连的方式,如果运维人员拥有过高的数据库操作权限,直接执行sql命令可能导致误操作,如不小心删除或修改关键数据,从而导致生产环境的数据丢失或混乱;而且未经严格审查和过滤的sql语句可能被恶意利用,例如通过注入攻击等方式获取、篡改或者删除敏感信息,严重威胁数据安全。不恰当的查询语句可能会导致数据库资源占用过高,比如运行消耗大量cpu、内存或i/o资源的查询,这不仅影响到当前业务系统的正常运行,也可能对其他依赖该数据库的服务造成连锁反应;直连操作通常难以做到完善的日志记录和审计追踪,不利于后续的问题定位与责任追溯;对于需要满足特定法规要求的企业,如金融、医疗等行业,缺乏标准化、流程化的运维操作手段可能导致合规性问题。
2、因此,有必要设计一种新的方法,实现最大限度地消除运维人员在日常操作过程中可能导致生产数据库数据丢失的风险因素,确保核心数据资产的安全性和完整性得到持久而稳固的保障,并且在此过程中,业务连续性不受任何影响。
技术实现思路
1、本发明的目的在于克服现有技术的缺陷,提供数据库运维防护方法、装置、计算机设备及存储介质。
2、为实现上述目的,本发明采用以下技术方案:数据库运维防护方法,包括:
3、对运维的数据库进行协议解析,以得到sql语句文本;
4、对所述sql语句文本进行分析,以得到sql抽象语法树;
5、对所述sql抽象语法树进行svm识别以及策略匹配处理,以得到符合要求的sql语句;
6、输出符合要求的sql语句,并执行符合要求的sql语句。
7、其进一步技术方案为:所述对运维的数据库进行协议解析,以得到sql语句文本,包括:
8、获取运维的数据库的网络通信数据;
9、对所述网络通信数据解析mysql协议,以得到解析结果;
10、对所述解析结果定位sql区域,以得到定位结果:
11、对所述定位结果进行解码还原,以得到sql语句文本。
12、其进一步技术方案为:所述对所述sql语句文本进行分析,以得到sql抽象语法树,包括:
13、对所述sql语句文本进行词法分析,以得到分析结果;
14、对所述分析结果进行语法分析,以得到sql抽象语法树。
15、其进一步技术方案为:所述对所述sql抽象语法树进行svm识别以及策略匹配处理,以得到符合要求的sql语句,包括;
16、对所述sql抽象语法树采用svm模型进行sql语句识别,以得到识别结果;
17、遍历所述识别结果,以确定内置策略;
18、采用所述内置策略对所述识别结果进行改写,以得到符合要求的sql语句。
19、其进一步技术方案为:所述输出符合要求的sql语句,并执行符合要求的sql语句,包括:
20、输出符合要求的sql语句,并执行符合要的sql语句,以得到执行结果以及性能数据。
21、其进一步技术方案为:所述输出符合要求的sql语句,并执行符合要的sql语句,以得到执行结果以及性能数据之后,还包括:
22、根据所述执行结果以及性能数据对所述svm模型进行自我学习和迭代优化。
23、其进一步技术方案为:所述输出符合要求的sql语句,并执行符合要的sql语句,以得到执行结果以及性能数据,包括:
24、输出符合要求的sql语句,并采用rust tokio异步框架执行符合要的sql语句,以得到执行结果以及性能数据。
25、本发明还提供了数据库运维防护装置,包括:
26、解析单元,用于对运维的数据库进行协议解析,以得到sql语句文本;
27、分析单元,用于对所述sql语句文本进行分析,以得到sql抽象语法树;
28、识别单元,用于对所述sql抽象语法树进行svm识别以及策略匹配处理,以得到符合要求的sql语句;
29、输出单元,用于输出符合要求的sql语句,并执行符合要求的sql语句。
30、本发明还提供了一种计算机设备,所述计算机设备包括存储器及处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现上述的方法。
31、本发明还提供了一种存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述的方法。
32、本发明与现有技术相比的有益效果是:本发明通过从运维的数据库内进行协议解析,对得到的sql语句文本进行分析,得到sql抽象语法树后,再进行svm识别和策略匹配处理,得到安全的sql语句后再输出,并执行和对svm模型进行自学习,实现最大限度地消除运维人员在日常操作过程中可能导致生产数据库数据丢失的风险因素,确保核心数据资产的安全性和完整性得到持久而稳固的保障,并且在此过程中,业务连续性不受任何影响。
33、下面结合附图和具体实施例对本发明作进一步描述。
1.数据库运维防护方法,其特征在于,包括:
2.根据权利要求1所述的数据库运维防护方法,其特征在于,所述对运维的数据库进行协议解析,以得到sql语句文本,包括:
3.根据权利要求1所述的数据库运维防护方法,其特征在于,所述对所述sql语句文本进行分析,以得到sql抽象语法树,包括:
4.根据权利要求1所述的数据库运维防护方法,其特征在于,所述对所述sql抽象语法树进行svm识别以及策略匹配处理,以得到符合要求的sql语句,包括;
5.根据权利要求1所述的数据库运维防护方法,其特征在于,所述输出符合要求的sql语句,并执行符合要求的sql语句,包括:
6.根据权利要求5所述的数据库运维防护方法,其特征在于,所述输出符合要求的sql语句,并执行符合要的sql语句,以得到执行结果以及性能数据之后,还包括:
7.根据权利要求5所述的数据库运维防护方法,其特征在于,所述输出符合要求的sql语句,并执行符合要的sql语句,以得到执行结果以及性能数据,包括:
8.数据库运维防护装置,其特征在于,包括:
9.一种计算机设备,其特征在于,所述计算机设备包括存储器及处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至7中任一项所述的方法。
10.一种存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7中任一项所述的方法。