PhpMyAdmin: One Ring to Rule Them All


on a vps that i was populating, i managed to create the virtual servers in such a way so that, on the main user’s phpmyadmin signin, i could see all the databases created (all the top-level virtual server databases).

now i’m working on another vps, but can’t repeat the steps to see all the databases with a single main user phpmyadmin signon.

does anyone have any suggestions on how i could do this?


You’d need to grant access to the MySQL user for all of the databases. PHPMyAdmin has access to whatever databases the user you used to login has access to.

By default, only the root MySQL user has access to all databases, but you can grant access to any user. The Webmin MySQL module can manage users and modify their privileges.

To do what you want:

  1. Webmin->Servers->MySQL Database Server
  2. Click Database Permissions
  3. Click the Create new database permissions button
  4. Choose “Any” for Databases
  5. Fill in the Username you want to have access to everything
  6. Hosts; this one is up to you. “From host permissions” is the most flexible, but specifying “localhost” is the simplest/safe option. Any is not recommended for this, as this is a dangerously powerful user.
  7. Permissions; select all the permissions you want them to have. All would be equal to the root user.

Save it. Test it. Test some other MySQL logins to make sure you didn’t accidentally open it up for everybody, or anonymous, or something similarly scary (I mention this because you really need to be careful giving any user this much access).

thanks Joe for your help.

now that you’ve pointed me in the right direction, a search shows as very useful to me around this matter of database permissions. particularly @locutus posts #2 and #9.

perhaps this is worthy to put in the Documentation section if it isn’t already? if it is, i missed it.

or just log into phpmyadmin as root…