phpMyAdmin
 sql >> Base de données >  >> Database Tools >> phpMyAdmin

phpMyAdmin n'affiche pas la liste des tables pour la base de données qui a définitivement des tables

J'avais un problème similaire. Après quelques recherches, j'ai découvert que la liste des tables de phpMyAdmin échouait sur cette requête :

SHOW TABLE STATUS FROM `database`;

Et voici le message d'erreur :

ERROR 1143 (42000): SELECT command denied to user ''@'localhost'
 for column `column` in table `table`

Ce qui m'a amené à cette question SO :mysql oublie qui est connecté :commande refusée à l'utilisateur ''@'%'

Ce qui m'a amené à la conclusion que l'une des vues que j'ai chargées dans la base de données a des privilèges qui sont en conflit. En effet, lorsque j'ai regardé le dump SQL à partir duquel je chargeais la base de données, j'ai trouvé le coupable :

CREATE ALGORITHM=UNDEFINED DEFINER=`someotheruser`@`localhost` ..

someotheruser n'existait pas dans mon MySQL local. Je l'ai changé comme suit :

CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` ..

Et rechargé la vue, et tout fonctionne maintenant correctement.