落地SQL审核的迭代思路

作者: admin 分类: 公众号存档            0 次浏览 发布时间: 2018-07-26 23:20

公众号:杨建荣的学习笔记 · 作者:杨建荣 · 发布:2018-07-26 23:20:35 · 原文链接

在近一年的工作里面,发现很多事情不是一蹴而就,一个核心思想就是迭代,简而言之,迭代的目标有两个主要的结果,一个是从0到1,另外一个是从1到99。对于很多运维系统来说,大家不要总是聊“后期如何如何”,先说有没有。

对于SQL审核也是如此,行业里有很多不错的审核方案,对于大多数同学来说,就没有必要完全从头开始弄一个了,要充分拥抱开源红利。

对于SQL审核,我理了下,大体有如下的几个主要目标:

1.充分测试 SQL审核工具 SQL Advisor和Inception

2.根据官方提供的信息和流程设计,查看哪些亮点和未测试到的功能

3.结合公司的运维开发规范对已有的结果进行梳理

4.定制SQL审核规则

5.定制SQL审核工具

6.工具接入试运行

所以整体来说,要做好SQL审核不是把软件安装好用就可以了,还需要做一些对比测试和分析,如果可以在这个基础上做一些改进,那是极好的。

当然现在说后面的步骤有些不切实际,所以先来说下初期的一些工作。

1.充分测试 SQL审核工具 SQL Advisor和Inception

准备数据

  •   准备数据表和数据字段

  •   提供线上的部分SQL示例

测试分为几个维度: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审核的落地情况如何,欢迎给出意见。

admin

杨建荣,《Oracle DBA工作笔记》《MySQL DBA工作笔记》作者,dbaplus社群发起人之一,腾讯云TVP,现任竞技世界系统部经理,拥有十多年数据库开发和运维经验,目前专注于开源技术、运维自动化和性能调优

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注