%20conectando-se%20a%20um%20servidor%20MySQL.png)
Tenho o MySQL instalado no meu servidor Ubuntu. Como eu gostaria de limpar meus usuários que estão atualmente ativos no MySQL, gostaria de verificar primeiro quais usuários - e de qual host - estão se conectando ao servidor MySQL.
A única coisa que preciso é: qual host está se conectando e qual nome de usuário é usado.
Tentei realizar esta tarefa com tcpdump, mas sem sorte até agora. Parece fácil obter toda a consulta, mas não recebo as informações mencionadas acima. O servidor é muito utilizado, se não houver outra opção posso habilitar o log de consulta geral, mas se for possível gostaria de evitar esta opção.
Alguém tem uma dica para mim sobre como posso realizar essa tarefa?
Responder1
- listar sessões atualmente ativas
No prompt do mysql, você pode digitar o seguinte para exibir as sessões ativas no momento:
mysql> show processlist;
Ou esta consulta mysql (que retorna as mesmas informações):
mysql> select * from information_schema.processlist;
E você só pode obter o par {user,host} assim:
mysql> select User,Host from information_schema.processlist;
- registrar e exibir o histórico de consultas.
Ative o log de consulta mysql
set global log_output = 'table';
set global general_log = 'on';
Veja todas as consultas executadas
select * from mysql.general_log;
Veja o timestamp, o host_user e a consulta relacionada:
select event_time,user_host,argument from mysql.general_log;
Espero que ajude.