前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >SQL审核 | SQLE 全面支持 TiDB 审核

SQL审核 | SQLE 全面支持 TiDB 审核

作者头像
爱可生开源社区
发布2022-09-26 10:10:21
1.6K0
发布2022-09-26 10:10:21
举报
文章被收录于专栏:爱可生开源社区

1.2206.0-pre1

SQLE Release Notes

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

注:本次升级为预览版本,仅可用新功能试用,不保证平滑升级

文章主要分为以下三部分内容:

一、SQLE 项目介绍

二、新版本主要功能介绍

三、完整的release信息

一、SQLE 项目介绍

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

SQLE 获取

类型

地址

版本库

https://github.com/actiontech/sqle

文档

https://actiontech.github.io/sqle-docs-cn/

发布信息

https://github.com/actiontech/sqle/releases

数据审核插件开发文档

https://actiontech.github.io/sqle-docs-cn/3.modules/3.7_auditplugin/auditplugin_development.html

社区版在线体验

http://124.70.158.246:8888/ 超级管理员:admin,密码:admin。

企业版在线体验

http://124.70.158.246:8889/用户:admin,密码:admin。

二、新版本主要功能介绍

1. 支持TIDB审核插件【企业版】

SQLE通过插件的形式支持TiDB的审核,我们调研了MySQL与TiDB的部分差异,在TiDB插件内引入了大部分MySQL的审核规则,并去掉TiDB不兼容的场景,使得SQLE能够完全兼容TiDB。后面我们会通过专门的文章来介绍TiDB的插件。以下是TiDB规则的截图:

2. 支持TiDB专属审核规则【企业版】

group by语句必须包含select列表中的所有非聚合列 检查 SQL需要遵守 'MySQL的ONLY_FULL_GROUP_BY' 模式;例如:select a, b, sum(c) from t group by a 中 SELECT 列表中的非聚合列 "b" 在 GROUP BY 语句中不显示。下面是SQLE规则截图:

group_concat() 语法必须使用 order by

例如:SELECT GROUP_CONCAT(a) FROM t 中 GROUP_CONCAT 函数内没有明确指定排序方式。下面是SQLE规则截图:

limit 分页查询必须使用排序

例如:select a from t limit 5 中未指定排序方式。下面是SQLE规则截图:

未使用自增主键/自动随机主键写入

例如:insert into t (id, name) values (1, "xx"); --ID是自增主键。此时使用显示 ID 写入,可能导致自动分配的主键值冲突,建议使用自增 ID 自动写入。下面是SQLE规则截图:

高并发写入表不建议使用自增主键

例如:create table t ( id int primary key auto_increment ); TiDB 中使用 auto_increment 自增属性时,容易导致写入热点,建议使用 bigint 类型和 AUTO_RANDOM 替代。下面是SQLE规则截图:

三、完整的release信息

Release Notes

特性

  • [#565] 支持 TiDB 类型数据库审核【企业版】
  • [#573] 新增4条TiDB专属规则【企业版】
    • 禁用 non-full group by 语法
    • group_concat() 语法必须使用order by
    • limit 分页查询必须使用排序
    • 未使用自增主键/自动随机主键写入
    • 高并发写入表不建议使用自增主键

缺陷修复

  • [#563] 修复SQLE scanner 解析带有空otherwise标签的 mybatis XML时异常崩溃

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-06-17,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 爱可生开源社区 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云数据库 SQL Server
腾讯云数据库 SQL Server (TencentDB for SQL Server)是业界最常用的商用数据库之一,对基于 Windows 架构的应用程序具有完美的支持。TencentDB for SQL Server 拥有微软正版授权,可持续为用户提供最新的功能,避免未授权使用软件的风险。具有即开即用、稳定可靠、安全运行、弹性扩缩等特点。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档