Come posso cercare per vedere se esiste un utente MySQL sul sistema?


8

Non sto trovando un utente show grants for 'username'@'localhost''pensando che forse il nome utente è leggermente diverso, quindi voglio fare una ricerca jolly di tutti gli utenti del database. Come posso fare questo?

aggiornamento: per chiarimenti, poiché sto pensando che forse non sono stato chiaro al 100%. per carattere jolly intendevo essere in grado di cercare solo una parte del nome utente o tutti gli utenti il ​​cui nome corrisponde al modello. Sul sistema di cui avevo bisogno c'erano 5k + utenti, e anche se non si tratta di una perdita di prestazioni enorme, non voglio nemmeno guardarli uno alla volta.

Risposte:


9

Grazie alla @matthewh 's risposta sono riuscito a comporre una query che avrebbe funzionato durante la ricerca attraverso un gran numero di utenti:

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

Nota: <user> è qualsiasi componente del nome utente che devi cercare, potresti aver bisogno di una% su entrambi i lati se non conosci l'inizio del nome utente, anche <> devono semplicemente annotare la variabile, non includerli in una query effettiva, a meno che il nome utente non includa <o>.


7
use mysql;

select Host,User from user;

ti darà tutti gli utenti MySQL su quel server.


Ho votato in basso, perché non fa ciò che intendevo con jolly, anche se riconosco che potrebbe essere stata colpa mia per non essere stato abbastanza chiaro in anticipo. Potrebbe essere stato interpretato come tutto quando ciò che volevo era l'equivalente di `find -name 'user *' per un nome file su unix.
xenoterracide,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.