In einem Cloud Umfeld kann man schnell mal die Übersicht verlieren, welche Clients sich an die Mysql Datenbank verbinden. Bei einer Fehleranalyse und Sicherheitsprüfung können auch die Mysql Client Informationen sehr hilfreich sein.
Nachfolgende Abfrage liefert sowohl die verbundenen Benutzer und deren Hosts, SSL Verschlüsselung / Version sowie die Client und Runtime Informationen. Letzteres kann auch im falle einer Fehleranalyse sehr hilfreich sein.
select sca.ATTR_NAME AS Name,
sca.ATTR_VALUE as Client_Version,
th.PROCESSLIST_USER,
th.PROCESSLIST_HOST,
sbt.variable_value
from performance_schema.threads th,
performance_schema.session_connect_attrs sca,
performance_schema.status_by_thread sbt
where th.PROCESSLIST_ID = sca.PROCESSLIST_ID
and sca.ATTR_NAME in ('_client_version','_runtime_version')
and sbt.variable_name = 'Ssl_version'
and th.THREAD_ID=sbt.THREAD_ID
group by sca.ATTR_NAME,
sca.ATTR_VALUE,
th.PROCESSLIST_USER,
th.PROCESSLIST_HOST,
sbt.variable_value
order by PROCESSLIST_USER,
PROCESSLIST_HOST;
Prüfung ob und welche SSL Version die Clients zur Verbindung verwenden.
SELECT variable_value AS tls_version,
processlist_user AS user,
processlist_host AS host
FROM performance_schema.status_by_thread sbt
JOIN performance_schema.threads t
ON (t.thread_id = sbt.thread_id)
WHERE variable_name = 'Ssl_version'
ORDER BY tls_version;