Como saber se um banco de dados MySQL está sendo acessado?

2

Existe alguma maneira conveniente de ver quais usuários estão acessando um banco de dados MySQL? Idealmente, eu teria algum tipo de aplicativo que facilitasse isso, mas outros métodos seriam OK.

Se não houver uma definição padrão, eu aceitaria "ter consultado o banco de dados nos últimos 30 minutos".

    
por Charles 17.09.2010 / 22:06

2 respostas

5

Como sobre a consulta:

SHOW FULL PROCESSLIST

Isso mostrará as conexões com o banco de dados, com qual usuário eles estão logados, o estado da conexão e qualquer comando atualmente em execução.

    
por 17.09.2010 / 22:16
3

Na linha de comando (supondo que você tenha uma pasta .my.cnf no seu diretório pessoal),

echo Total\ Connections:; mysqladmin processlist | tail -n +4 | head -n -1 | grep Sleep | wc -l ; echo ; echo Current\ Users: ; mysqladmin processlist | tail -n +4 | head -n -1 | grep Sleep | awk '{print $4}' | sort | uniq

Isso oferece uma boa impressão de usuários únicos e conexões totais.

    
por 22.09.2010 / 08:03

Tags