Evaluation of SQLE SQL Auditing Tool's Support for MySQL 8.0
This article evaluates the open‑source SQLE SQL auditing platform against MySQL 8.0.28, demonstrating how DDL, DML, DCL statements and their contextual relationships are checked, highlighting successful detections, mismatches caused by new MySQL 8.0 features, and concluding on overall compatibility.
Introduction
SQLE, an extensible open‑source SQL audit tool developed by ActionTech, is widely used for SQL review and standardized release processes. The article tests SQLE version sqle-ce-1.2203.0 against MySQL version 8.0.28 to assess its support for new MySQL features.
DDL Statement Review
1. Create Table Test Ⅰ
The tool correctly flags violations of table‑creation rules and naming conventions.
2. Create Table Test Ⅱ (reserved‑word conflict)
Two statements are examined: one syntactically correct, the other using the MySQL 8.0 reserved word rank . SQLE fails to raise an error for the rank table, indicating its keyword database needs updating; the statement would still fail at deployment.
3. Alter Table Index/Column Test
SQLE accurately reports errors when index or column definitions violate rules.
4. Disable Index Test
When an index is altered to an invisible state, SQLE does not produce the expected “no‑issue” result because the syntax ALTER TABLE ... ALTER INDEX ... is new in MySQL 8.0 and not yet parsed by SQLE.
DCL Statement Review
1. SET Command Test
Standard SET statements are handled, but the newer SET PERSIST … syntax is not recognized, leading to unexpected audit results.
2. GRANT and Role Authorization Test
User and role creation/authorization statements are correctly identified and approved by SQLE.
DML Statement Review
1. INSERT/UPDATE/DELETE Test
All DML statements conforming to development standards are accepted; violations are reported as errors.
2. SELECT Test
SELECT queries are audited successfully, with non‑compliant patterns flagged.
DDL‑DML Contextual Association
Tests verify that newly added columns in DDL are correctly linked to subsequent DML INSERT statements, while unrelated DML statements are properly rejected.
JSON Feature Test
MySQL 8.0 JSON capabilities, including JSON_TABLE , are largely supported; other JSON syntax behaves as in MySQL 5.7.
Conclusion
The evaluation shows that SQLE handles the majority of DDL, DML, and DCL statements for MySQL 8.0 similarly to MySQL 5.7, and it can associate DDL changes with related DML. However, a few MySQL 8.0‑specific features—new reserved words such as RANK and ROW_NUMBER , the ALTER INDEX syntax, SET PERSIST , and JSON_TABLE —are not yet supported, though they are rarely used in everyday SQL development and are expected to be addressed in future SQLE releases.
Aikesheng Open Source Community
The Aikesheng Open Source Community provides stable, enterprise‑grade MySQL open‑source tools and services, releases a premium open‑source component each year (1024), and continuously operates and maintains them.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.