暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Yearning SQL审计平台指北落地

指北生活技术 2022-06-15
1584

一、为什么要使用SQL审计平台

1、数据库连接的安全问题是任何公司都需要考虑的问题。

2、后端程序员常常会应各种原因需要通过数据库查询排查问题或通过SQL直接更改数据。

3、技术主管或DBA需要 review 生产执行的所有SQL,以防出现危险SQL操作。

4、当出现问题时,如何快速排查定位到具体责任人。


二、为什么选择 Yarning

根据我们的具体需求和使用人数,我们选择 Yarning 的原因是:

1、基本满足我们的需求

2、操作简单,界面简洁

3、开源免费,Star 多


三、如何使用

测试环境

http://10.0.40.111:8000/#/order

账号:admin,密码:---


四、问题

1、检查功能不准确?

Yearning 的检查实际上是执行计划,即SQL的扫描行数,而非影响行数。

Yearning 有审核规则限制执行语句的扫描行数,这导致有一些同学的 DML 语句无法执行,其实这个问题主要是因为你的 DML 语句的 Where 条件没有命中索引,如果实在无法命中索引,可以通过查询到主键ID,然后再直接使用 IN 主键ID集合来执行 DML 。


2、批量执行不是一个事务?

是的,目前看来,一个工单中的多条语句不是一个事务提交的,是分开一个一个执行的,且目前没有地方可以设置成一个事务执行。


3、为什么有的工单有回滚语句,有的没有?

Yearning 采用解析binlog方式的方式获得回滚语句。

由于Mysql replication协议限制,必须拥有SUPER/REPLICATION SLAVE, REPLICATION CLIENT ,ALL PRIVILEGES 权限的账号才可以获得binlog流。

所以,如想体验生成回滚语句备份功能,请确保对应填写的数据源账号拥有相应权限,同时对应数据源应开启binlog功能。

其次提交的工单需要选择备份。


4、无法实现多环境同步工单执行?

是的,虽然赞助版本有不同环境工单复制的功能,但目前看来,它的复制方式并不快捷,且因为我们测试没有对同学做,所以还不如我们手动复制执行来的快。


文章转载自指北生活技术,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论