在近一年的工作里面,发现很多事情不是一蹴而就,一个核心思想就是迭代,简而言之,迭代的目标有两个主要的结果,一个是从0到1,另外一个是从1到99。对于很多运维系统来说,大家不要总是聊“后期如何如何”,先说有没有。
对于SQL审核也是如此,行业里有很多不错的审核方案,对于大多数同学来说,就没有必要完全从头开始弄一个了,要充分拥抱开源红利。
对于SQL审核,我理了下,大体有如下的几个主要目标:
1.充分测试 SQL审核工具 SQL Advisor和Inception
2.根据官方提供的信息和流程设计,查看哪些亮点和未测试到的功能
3.结合公司的运维开发规范对已有的结果进行梳理
4.定制SQL审核规则
5.定制SQL审核工具
6.工具接入试运行
所以整体来说,要做好SQL审核不是把软件安装好用就可以了,还需要做一些对比测试和分析,如果可以在这个基础上做一些改进,那是极好的。
当然现在说后面的步骤有些不切实际,所以先来说下初期的一些工作。
1.充分测试 SQL审核工具 SQL Advisor和Inception
准备数据
测试分为几个维度:DDL, DML,DQL
对于不同的维度的测试,我会标记处一些重点和要点来
DDL:
Create 重点
Alter 重点
Drop
Truncate
DML:
Insert 重点
Insert into values(xx),(xxx)
Insert into select
Insert into set
Delete 重点
Update 重点
Replace into
DQL:
Select 单表 重点
多表关联 重点
Union all
。。。
初步测试之后,对已有的测试案例进行讨论和整理,以上的方案就可以做一些初步的总结了。
大家对于SQL审核的落地情况如何,欢迎给出意见。