Details
-
Bug
-
Status: Closed (View Workflow)
-
Critical
-
Resolution: Fixed
-
10.5.4
-
None
Description
The commands
DELIMITER // |
|
CREATE PROCEDURE simpleproc (OUT param1 INT)
|
BEGIN
|
SELECT COUNT(*) INTO param1 FROM t;
|
END;
|
//
|
|
DELIMITER ;
|
|
DROP PROCEDURE simpleproc ;
|
will not be logged with
set global server_audit_events = "CONNECT,QUERY_DDL,QUERY_DCL";
also not with QUERY_DML
set global server_audit_events = "CONNECT,QUERY_DDL,QUERY_DCL,QUERY_DML";
with adding QUERY it works.
set global server_audit_events = "CONNECT,QUERY_DDL,QUERY_DCL,QUERY_DML,QUERY";
In the KB CREATE / DROP PROCEDURE will not classified as DDL.
—except CREATE/DROP [PROCEDURE / FUNCTION / USER] and RENAME USER (they're not DDL)
|
[https://mariadb.com/kb/en/mariadb-audit-plugin-log-settings/|
https://mariadb.com/kb/en/mariadb-audit-plugin-log-settings/]
Even if this would be true, it should be logged with adding QUERY_DML at least,
but SQL standard classify it also as DDL.
https://www.w3schools.in/mysql/ddl-dml-dcl/#DDL
In MariaDB and SQL standard DROP / CREATE Procedures is classified as DDL.