phpMyAdmin update fails

I have phpMyAdmin installed in the root of a sub-server’s public_html directory. I installed using an install script and the version is 4.6.6. The status message in the Install Scripts screen is “Version 4.7.4 is available”.

If I select the script and hit the upgrade button I get this error message:

“Upgrading phpMyAdmin to version 4.7.4 …
… failed dependencies : phpMyAdmin requires a MySQL database”

Also on the Install Scripts page, the Database column shows “None”, which is puzzling since phpMyAdmin works just fine after the original installation. On the Edit Databases screen for the virtual server I see “This virtual server does not have any databases yet.”

I don’t see any “phpMyAdmin” database in the list of databases show by phpMyAdmin or in /var/lib/mysql.

The GPL Virtualmin version is 6.01.

What do I need to do to upgrade the phpMyAdmin version?


I can see how this message might be confusing; it’s not saying you don’t’ have MySQL installed on the system. It is saying you don’t have the MySQL feature enabled and a database created for the virtual server (the domain) in which phpMyAdmin is installed.

So, to make the install script happy, you just need to edit Enabled Features and turn on MySQL Database, and then create a database for that user. This dependency was probably added in recent versions (which is why you could install it in the past but now can’t upgrade it). It’s probably an unnecessary dependency, since some users like to have a “central” phpmyadmin for the whole system and not tie it to any particular database (since phpMyAdmin does its own authentication and can actually use any database it is told how to login to), though I understand why Jamie might have added it. We’re probably imposing restrictions unnecessarily here.

Hi Joe,

First, apologies for the delay in replying. I forgot to turn on notifications.

I already had the MySQL database turned on in Enabled Features but no database created. Once I created a database the update script worked even though there are no tables created in the database.

This is my “central” phpMyAdmin installation for the system so as you pointed out phpMyAdmin is doing its own authentication.

Easy fix and thanks for your help!