I have got this error message in Vesta Control Panel, in phpMyAdmin:

SELECT command denied to user ''@'localhost' for table 'pma_table_uiprefs'

SELECT `prefs` 
FROM `phpmyadmin`.`pma_table_uiprefs` 
WHERE `username` = 'admin_db1' 
AND `db_name` = 'admin_db1' 
AND `table_name` = 'testtable'

I have already tried to solve with this command:

TO 'admin_db1'@'localhost' IDENTIFIED BY 'mypassword';

1 Answer 1


I wonder if your config.inc.php has a properly configured controluser. The error message (indicating that permission was denied for user '') suggests some problem with your configuration file or the controluser itself.

Please look for the two controluser lines which should read as:

$cfg['Servers'][$i]['controluser']   = 'admin_db1';
$cfg['Servers'][$i]['controlpass']   = 'mypassword';

If they are there and correct, please try connecting as that account from the command line client (on the same machine running phpMyAdmin) to see if you can manually USE the phpmyadmin database and that the table pma_table_uiprefs exists.

If all that fails, you may wish to post your config.inc.php here, obscuring any sensitive information such as usernames, passwords, and hostnames.

Or, alternatively, if you have no need for the advanced configuration options you can just remove the controluser, controlpass, and pmadb lines from your config.inc.php and it will bypass that part completely.

  • Where can I find config.inc.php.file?
    – plaidshirt
    Feb 9, 2016 at 18:06
  • Normally it's in the main phpMyAdmin directory, though if you used a package manager or packaged kit to install it, they might have put it elsewhere.
    – ibennetch
    Feb 9, 2016 at 22:23

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.