The old Percona Audit Log plugin works fine with MySQL 8.0. Does anyone know if the new audit_log_filter component works with MySQL 8.4?
I’ve been trying to install it and it doesn’t seem to install properly. Just wanting to check if it is me, or if it simply isn’t compatible with MySQL anymore.
At present I am using (Oracle) MySQL 8.0 (community) with the Percona Audit Log plugin. I am looking to upgrade to (Oracle) MySQL 8.4 (community) but require a working audit log plugin. As you say it doesn’t appear to be available in the Percona for MySQL 8.4 editions. I will have another look at the Percona Audit Log filter plugin to see if that works (although from previous testing it seems that it doesn’t).
So, I though maybe it’s because I have MySQL 8.4 and Percona are on 8.3. So I installed a copy of Percona Server for MySQL (8.4.3-3) and followed the instructions on the website (Audit Log Filter overview - Percona Server for MySQL). And it still doesn’t work.
I set up the two tables and populated them with: insert into audit_log_filter (filter_id, name, filter) values (1, 'all events', '{"filter": { "log": true }}'); insert into audit_log_filter (username, userhost, filtername) values ('%', '%', 'all events');
I then restarted MySQL to make sure, and created a new user / schema / tables / logged out and back in with the new user etc.
And all I have in the log is: [ { "timestamp": "2025-03-11 14:03:20", "id": 0, "class": "audit", "event": "audit", "server_id": 1 }#
Clearly there is some issue with it !!!
I’m just wondering has anyone made it work, and if so how ???
As a side note, I also just tried installing the original audit_log plugin (audit_log.so), that was bundled with MySQL 8.4.3-3.
It also doesn’t work. It just gives an error
@IGGt
Based on Percona’s official documentation (Upgrade Components - Percona Server 8.4), the old audit_log plugin has been removed in MySQL 8.4, and the recommended replacement is the audit_log_filter component.
Regarding your setup, the issue likely stems from how the filter is applied. Instead of inserting values directly into audit_log_filter and audit_log_user tables, you should use the built-in functions:
That makes no difference either. I re-installed the audit_log_filter from scratch, configured it as per above. I then ran a selection of queries using two different accounts, and still nothing appears in the audit log.
I also installed Percona Server for MySQL 8.0 (8.0.41-32), and followed the instructions to install the audit_log_filter plugin Audit Log Filter overview - Percona Server for MySQL.
And it still doesn’t work. The result is exactly the same. The log contains one entry from when the server starts, and then nothing else ever gets added.