phpMyAdmin
 sql >> Database >  >> Database Tools >> phpMyAdmin

Rimuovere i privilegi dal database MySQL

Il privilegio USAGE in mysql significa semplicemente che non ci sono privilegi per l'utente 'phpadmin'@'localhost' definito a livello globale *.* . Inoltre lo stesso utente ha tutti i privilegi sul database phpmyadmin phpadmin.* .

Quindi, se vuoi rimuovere tutti i privilegi e ricominciare da zero, procedi come segue:

  • Revoca tutti i privilegi a livello di database:

    REVOKE ALL PRIVILEGES ON phpmyadmin.* FROM 'phpmyadmin'@'localhost';

  • Rilascia l'utente 'phpmyadmin'@'localhost'

    DROP USER 'phpmyadmin'@'localhost';

La procedura precedente rimuoverà completamente l'utente dalla tua istanza, ciò significa che puoi ricrearlo da zero.

Per darti un po' di background su quanto sopra descritto:appena crei un utente il mysql.user la tabella verrà popolata. Se guardi un record al suo interno, vedrai l'utente e tutti i privilegi impostati su 'N' . Se esegui un show grants for 'phpmyadmin'@'localhost'; vedrai, il già familiare, uscita sopra. Tradotto semplicemente in "nessun privilegio a livello globale per l'utente". Ora la tua concessione ALL a questo utente a livello di database, questo sarà memorizzato nella tabella mysql.db . Se esegui un SELECT * FROM mysql.db WHERE db = 'nameofdb'; vedrai un 'Y' su ogni priv.

Sopra descritto mostra lo scenario che hai sul tuo db al momento. Quindi avere un utente che ha solo USAGE privilegio significa che questo utente può connettersi, ma oltre a SHOW GLOBAL VARIABLES; SHOW GLOBAL STATUS; non ha altri privilegi.