I am running MySQL 5.7 on a 3 node cluster using InnodBCluster. It is making the user of the general_log quite challenging. The mysqlrouter check ins are being logged in the mysql general_log. These status updates are appearing in the log nearly every second for every router that is pointed at the cluster.
2808634 Query select I.mysql_server_uuid, I.endpoint, I.xendpoint, I.attributes from mysql_innodb_cluster_metadata.v2_instances I join mysql_innodb_cluster_metadata.v2_gr_clusters C on I.cluster_id = C.cluster_id where C.cluster_name = 'cluster' AND C.group_name = '7b6cc6c6-b4d6-11ea-bb3a-023d3853a38a' 2808634 Query COMMIT 2808634 Query show status like 'group_replication_primary_member' 2808634 Query SELECT member_id, member_host, member_port, member_state, @@group_replication_single_primary_mode FROM on_group_members WHERE channel_name = 'group_replication_applier' 8 Query BEGIN 8 Query COMMIT /* implicit, from Xid_log_event */ 2808633 Quit
I’m guessing this is how mysqlrouter is internally knowing where to route connections. Is there a to not write this to the general_log? Other than turning off the general_log?
I use the general_log to audit of who logs in and what they run. I have found there are tools to do this other than the general_log such as:
MySQL Enterprise Audit https://dev.mysql.com/doc/refman/5.7/en/audit-log.html
Percona Audit Log https://www.percona.com/doc/percona-server/5.7/management/audit_log_plugin.html
Which I may need to investigate further.