Como pesquiso para ver se existe um usuário MySQL no sistema?


8

Não estou encontrando um usuário, show grants for 'username'@'localhost''pois acho que talvez o nome de usuário seja um pouco diferente, por isso quero fazer uma pesquisa curinga de todos os usuários do banco de dados. Como posso fazer isso?

update: para esclarecimento, como penso, talvez não tenha sido 100% claro. por curinga, quis dizer que eu queria poder pesquisar apenas parte do nome do usuário ou todos os usuários cujo nome corresponde ao padrão. No sistema em que eu precisava, havia mais de 5 mil usuários e, embora isso não seja uma perda de desempenho enorme, também não quero examiná-los um por vez.

Respostas:


9

Graças à resposta de @matthewh , consegui compor uma consulta que funcionaria ao pesquisar por um grande número de usuários:

use mysql;
select  User, Host from  user where User like 'user%';

Nota: <user> seja qual for o componente do nome de usuário que você precise procurar, talvez seja necessário um% de ambos os lados, se você não souber o início do nome de usuário, também <> apenas para observar a variável, não os inclua em uma consulta real, a menos que o nome de usuário inclua <ou>.


7
use mysql;

select Host,User from user;

lhe dará todos os usuários do MySQL nesse servidor.


Votei este abaixo, porque não faz o que eu quis dizer com curinga, embora reconheça que pode ter sido minha culpa por não ter sido suficientemente claro na frente. Pode ter sido interpretado como tudo quando o que eu queria era o equivalente a `find -name 'user *' para um nome de arquivo no unix.
Xenoterracide
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.