SQLE 2.2309.0 新增 SQL 快捷审核、SQL 管控面板、知识库功能


重要版本预告

📢 SQLE 3.0 版本即将于 10 月 24 日发布!🎉🎉🎉

🤗 全新的界面设计将带来焕然一新的体验,届时热忱欢迎您的试用。

SQL 审核工具 SQLE 2.2309.0 于今天发布。以下对新版本的 Release Notes 进行详细解读。

内容概览:

一、SQLE 项目介绍

二、新版本主要功能介绍

    社区版

        1. 扫描任务审核报告支持下载

        2. 支持快速审核 SQL

        3. 新增 MySQL 审核规则

    企业版

        1. 支持通过飞书审批工单

        2. 新增项目全生命周期 SQL 管控面板

        3. 新增规则知识库

        4. 新增 TDSQL 审核规则

三、完整的 Release 信息

一、SQLE 项目介绍

爱可生开源社区的 SQLE 是一款面向数据库使用者和管理者,支持多场景审核,支持标准化上线流程,原生支持 MySQL 审核且数据库类型可扩展的 SQL 审核工具。目前支持各种数据库规则 700+。

SQLE 获取

类型 地址
版本库 https://github.com/actiontech/sqle
文档 https://actiontech.github.io/sqle-docs/
发布信息 https://github.com/actiontech/sqle/releases
数据审核插件开发文档 https://actiontech.github.io/sqle-docs/docs/dev-manual/plugins/howtodev
社区版和企业版功能对比 https://actiontech.github.io/sqle-docs/docs/support/compare
在线体验-社区版 http://demo.sqle.actionsky.com
超级管理员:admin    密码:admin
在线体验-企业版 http://demo.sqle.actionsky.com:8889
用户:admin    密码:admin

 

 

二、新版本主要功能介绍

# 社区版

1. 扫描任务审核报告支持下载

本期已实现扫描任务审核报告的下载功能,当用户需要将扫描任务产生的审核报告同步给项目外的其他人,或需要对审核报告进行存档时,可以直接下载报告文件。以下是简单的功能试用:

查看扫描任务的审核报告时,用户点击下载扫描任务报告按钮。

平台将以 CSV 格式导出当前扫描任务报告内容,用户可以在导出文件中查看报告基本信息及 SQL 审核结果。

2. 支持快速审核 SQL

现在,您可以直接提交需要审核的 SQL,无需创建工单,即刻获得审核结果。这个全新的功能将带来更快速、更高效的审核体验。来一起简单体验一下:

进入“项目”页面后,左边栏增加了“SQL 审核”功能选项,点击后展开的是 SQL 审核的历史审核记录列表。

点击右上角的“创建审核”,就可以开始审核啦!与工单审核不同的是,新功能还额外支持不连接数据源的静态审核,可以在没有运行时环境的情况下,对 SQL 进行全面的语法和语义分析。SQL 上传方式也新增了上传 ZIP 文件的方式。此外,还可以为审核记录添加业务标签,满足您更多的场景需求。

SQL 审核页面

编辑好SQL之后点击编辑框下方的“审核”按钮,即可查看到审核结果。审核结束后,可以回到审核记录列表追溯到每次审核的信息。

查看审核结果

 

3. 新增 MySQL 审核规则

  • 禁止在 WHERE 条件中使用与过滤字段不一致的数据类型

  • 禁止使用聚合函数

  • 避免在 FROM 子句中对相同的表被连接两次及以上

  • ORDER BY / GROUP BY 操作需要能使用索引排序或分组

  • SQL 查询条件必须能走索引

  • 表字段必须有 NOT NULL 约束

  • 禁止 INSERT ... SELECT

  • 建议连库查询时,确保 SQL 执行计划中使用的索引区分度大于阈值

  • 使用 TEXT 类型的字段建议和原表进行分拆,与原表主键单独组成另外一个表进行存放

  • 建议在组合索引中将区分度高的字段靠前放

  • JOIN 字段必须包含索引

  • 扫描行数超过阈值,筛选条件必须带上主键或者索引

  • 查询数据量超过阈值,筛选条件必须带上主键或者索引

  • 表行数超过阈值,建议对表进行拆分

  • 禁止对索引列进行数学运算和使用函数

  • 连接表字段的字符集和排序规则必须一致

 

# 企业版

1. 支持通过飞书审批工单

本期实现 SQLE 平台与飞书的对接,企业用户可以将工单审批集成到团队的协作平台中,使审批过程更加便捷、高效和可追溯,同时提升数据安全和团队协作的效率。以下是简单的功能效果:

创建工单后,相应审批成员即可在飞书端收到审批通知。

飞书审批通知

点击审批卡片,查看工单详情,可点击 同意/拒绝,完成审批操作。

工单详情

你可以在用户手册的流程对接部分查找相关应用的配置指南,用户手册的链接为:https://actiontech.github.io/sqle-docs/docs/user-manual/sys-configuration/process_syn

此外,如果你的团队使用钉钉作为协作工具,SQLE 也已支持与钉钉审批的对接,关于如何使用此功能的详细说明,同样可以在上述链接中找到,以下是钉钉审批的效果示例:

钉钉审批通知

2. 新增项目全生命周期 SQL 管控面板

为了提供更好的 SQL 审核和处理体验,平台引入了项目全生命周期 SQL 管控面板。通过该功能,用户可从多维度全面了解平台当前采集的 SQL 情况,包括平台采集的 SQL 总量、已发现的问题 SQL 量、已优化 SQL 量,用以快速发现和修复不合规的 SQL,提高数据库性能和维护效率同时,监控面板还支持快捷操作,项目管理员可以将需要调整的 SQL 分配给其他成员进行修改,并手动关闭已解决的 SQL。

SQL 管控面板

3. 新增规则知识库

我们引入了规则知识库页面,汇集了一批经验丰富的 DBA 运维专家的沉淀,旨在帮助研发人员深入理解规则和提供 SQL 优化的建议,并将其应用于实际开发中。

知识库页面一般包含规则的背景、原理、优化建议以及对应的规范 SQL 举例。通过知识库页面,用户可以获得更加深入和完整的规则认识,了解规则的背景与优化方法,从而实现更高效的开发和优化。

知识库

用户在规则列表或审核结果页面查看规则时,可以点击“查看更多”按钮,进入知识库页面。

规则列表页面

审核结果页面

此外,用户还可以编辑、贡献自己对规则的理解,共享和积累宝贵的经验。

4. 新增 TDSQL 审核规则

  • shardkey 字段的类型必须是 INT、BIGINT、SMALLINT、CHAR 或 VARCHAR

  • shardkey 字段内容禁止包含中文

  • 禁止使用聚合函数

  • SQL 查询条件必须能走索引

  • 表字段必须有 NOT NULL 约束

  • 禁止 INSERT ... SELECT

  • 建议连库查询时,确保 SQL 执行计划中使用的索引区分度大于阈值

  • 使用 TEXT 类型的字段建议和原表进行分拆,与原表主键单独组成另外一个表进行存放 建议在组合索引中将区分度高的字段靠前放

  • JOIN 字段必须包含索引

  • 扫描行数超过阈值,筛选条件必须带上主键或者索引

  • 查询数据量超过阈值,筛选条件必须带上主键或者索引

  • 表行数超过阈值,建议对表进行拆分

  • 禁止对索引列进行数学运算和使用函数

  • 连接表字段的字符集和排序规则必须一致

  • 使用联合索引时,必须使用联合索引的首字段

  • 禁止对联合索引左侧字段进行 IN 、OR 操作

 

三、完整的 Release 信息

 

# 社区版

新功能:

  • [#1743] 新增 MySQL 审核规则

  • [#1764] MyBatis 智能扫描任务支持所有类型的数据源

  • [#1767] 支持导出智能扫描任务的审核报告

  • [#1783] 新增 MySQL 审核规则

  • [#1811] 页面上新增 SQL 审核功能

优化:

  • [#1733] UI 对所有资源名称长度限制放宽到 120 个字符

  • [#1768] 查看工单列表时,支持对工单描述使用模糊搜索

Bug 修复:

  • [#1756] 修复开启钉钉对接后,关闭工单会导致 panic 的问题

  • [#1830][#1832] 修复 MySQL 审核时如果 SQL 内切换过 schema,导致审核异常的问题

 

# 企业版

新功能:

  • [#901] 支持通过飞书审批工单

  • [#916] TDSQL 新增审核规则

  • [#943] 新增 SQL 全生命周期管控功能

  • [#958] 新增审核规则的知识库功能

  • [#974] 智能扫描支持对 TDSQL 进行库表元数据扫描

  • [#982] 新增 TDSQL 审核规则

优化:

  • [#931] 优化 MySQL 慢日志文件类型的智能扫描任务


相關推薦

2023-10-28

,包括但不限于:MySQL、DB2、Oracle 等 提供默认的规则知识库 支持用户在平台上快速审核 SQL 提供 IDEA 审核插件,在代码开发中获得 SQL 审核意见 支持自定义审核规则 支持查看 SQL 全生命周期管控面板 强化了

2023-11-04

审核结果,您可以优化 SQL 语句,也可以查阅相关规则的知识库,获取处理经验。CloudBeaver 还会根据数据源上配置的 SQL 执行等级来限制风险 SQL 执行,以增强数据安全性。以下是 CloudBeaver 审核功能的简单效果示例: 1. 输入 SQL

2023-12-02

轻松审核压缩包中包含的 SQL 语句。 ZIP 文件上传 2、新增 6 条 MySQL 规则 禁止 CHAR,VARCHAR 类型字段字符长度总和超过阈值 禁止使用空间字段和空间索引 禁止使用全文索引 SQL 执行计划中 type 字段建议满足规定

2023-05-27

Kill;SQL 执行失败需要人工确认数据影响等。 本次版本新增了 SQL 上线中止的功能,SQL 上线阻塞时能够在工单界面一键中止上线操作,减少人工干预的成本,并减少故障恢复时间。后续,SQLE 也将覆盖更多的异常场景,异常后

2023-08-26

功能介绍 # 社区版 1. 智能扫描支持 SQL 文件扫描 平台新增扫描任务,当前支持对 SQL 文件进行扫描。利用该扫描任务,用户可以在批量执行 SQL 前发现潜在的安全漏洞、提高数据库性能及数据库开发质量。以下是简单的功能试

2023-06-03

Kill;SQL 执行失败需要人工确认数据影响等。 本次版本新增了 SQL 上线中止的功能,SQL 上线阻塞时能够在工单界面一键中止上线操作,减少人工干预的成本,并减少故障恢复时间。后续,SQLE 也将覆盖更多的异常场景,异常后

2024-06-29

UI 体验优化,强化提示 [actiontech/sqle-ee/issues/1587] 优化知识库中代码块的显示格式 [actiontech/sqle-ee/issues/1567] OB for Oracle 插件支持采集 V4.0.0 前的视图$PLAN_CACHE_PLAN_STAT Bug 修复 [actiontech/sqle-ee/issues/1571] 解决包含部分关键

2023-07-01

min   二、新版本主要功能介绍 【社区版】 1. 新增 3 条 MySQL 规则 根据业务需求,本期新增 3 条 MySQL 规则,分别为: 1. 建表时,自增字段只能设置一个。 2. 不建议对同一张表连接多次。 3. 为至少一个索引添加非

2024-08-03

支持从数据源维度聚合智能扫描类型 支持自动采集与审核 PostgreSQL 数据源库表结构   专业版 同步更新欢迎下载体验,以下是 SQLE 3.2407.0 正式版的新功能解读。   🎈 新功能 社区版 支持以 OceanBase 作为元数

2023-06-17

admin   二、新版本主要功能介绍 【社区版】 新增 3 条 MySQL 审核规则 根据业务需求,本期新增 3 条MySQL规则,分别为: 1. 建表时,自增字段只能设置一个; 2. 不建议对同一张表连接多次; 3. 为至少一个索引添

2023-06-10

在 项目->数据源管理 页面添加 TDSQL 数据源。在新增数据源时,需要选择数据库类型为 TDSQL For InnoDB,并填写相关信息,然后点击提交即可完成添加。 添加数据源 3. 用户可以进入工单列表页面,点击 "创建工

2023-07-08

解项目的进展和风险,并快速触达项目的基本功能。 1. 新增了项目评分功能,可以让用户更好地了解项目的健康情况。 2. 新增了数据源、工单、扫描任务、成员的统计项,帮助用户更好地了解平台的使用情况。 3. 新增了SQL统

2023-05-27

和导出(Export)权限 支持对 Oracle 数据库变更进行 SQL 审核 支持通过 SSH 隧道连接 PostgreSQL 和 Redis 数据库 改进 自动关闭已完成的工单 支持从项目中批量转移出数据库 支持为 GitOps 配置 Webhook URL 更多详情可查看:ht

2023-06-23

,更新内容如下: 新功能 支持 Snowflake 的 SQL 审核 新增数据导出中心      支持 Oracle 的数据脱敏 改进 支持配置外部审批节点,并用于自定义审批流中 自定义审批流支持「退回」操作 项目