Yearning SQL审核平台使用分享

1 遇到的问题

(1)发版小心谨慎。新版本发版(SQL由开发环境转入测试环境、测试环境迁移正式环境)经常一些SQL语句忘记执行,导致花大量时间定位bug,最终发现是sql引起的。

(目前基于人工记录的方式,经常会有记录漏的情况,包含系统字典的配置及新增的sql语句)

(2)DDL语句不规范。目前开发的项目为自行建表,出现了部分表没有注释,导致后续维护困难的现象。

(3)数据库回滚不方便。在遇到一些场景需要恢复数据库的时候,无法快速有效的对数据库进行回滚。

2 目的

(1)SQL审核查询平台的主要目的是将不同环境的SQL进行平稳迁移,同时在一定程度保证数据表的安全性。

(2)保护正式环境,对delete、drop语句进行权限隔离

(3)数据库细粒度的权限控制,为不同用户分配不同权限。

(4)具有回滚功能,执行出错可以一键回滚。

3 为什么选用Yearning

目前市面上有Sqle、Archery等开源工具均具有sql审核功能。其中yearning的星级较高被广泛使用,且功能简洁主要的功能就是SQL审核。

4 部署教程

(1)在以下地址下载安装包

https://github.com/cookieY/Yearning/releases

(2)解压

(3)修改配置文件

cat conf.toml


[Mysql]
Db = "Yearning"
Host = "127.0.0.1"
Port = "3306"
Password = "xxxx"
User = "root"

[General]   #数据库加解密key,只可更改一次。大小写字母均可, 长度必须为 16 位 如长度不是16位将会导致无法新建数据源
SecretKey = "dbcjqheupqjsuwsm"

(4)安装启动

./Yearning install

./Yearning run --push "172.27.80.35" -port "8000"

打开浏览器    http://127.0.0.1:8000

默认账号/密码:  admin/Yearning_admin

5 具有的功能

  • SQL 查询
    • 查询工单
    • 导出
    • 自动补全,智能提示
    • 查询语句审计
    • 查询结果脱敏
  • SQL 审核
    • 流程化工单
    • SQL语句语法检测
    • 根据规则检测SQL语句合规性
    • 自动生成DDL/DML回滚语句
    • 历史审核记录
  • 推送
    • E-mail 工单推送
    • 钉钉 webhook 机器人工单推送
  • 用户权限及管理
    • 角色划分
    • 基于用户的细粒度权限
    • 注册
  • 其他
    • todoList
    • LDAP 登录
    • 动态审核规则配置
    • 自定义审核层级
    • OIDC SSO 自动注册与登录
  • AutoTask 自执行

6 系统界面

  • Dashboard

  • 审核

  • 查询(SQL 语法高亮及自动补全)

  • 审计(工单审计)

猜你喜欢

转载自blog.csdn.net/lili1158/article/details/126055634