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

phpMyAdmin zeigt keine Tabellenliste für Datenbanken an, die definitiv Tabellen enthalten

Ich hatte ein ähnliches Problem. Durch einiges Graben fand ich heraus, dass die Tabellenliste von phpMyAdmin bei dieser Abfrage fehlschlug:

SHOW TABLE STATUS FROM `database`;

Und das war die Fehlermeldung:

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

Was mich zu dieser SO-Frage führte:mysql vergisst, wer angemeldet ist:Befehl verweigert für Benutzer ''@'%'

Dies führte mich zu dem Schluss, dass eine der Ansichten, die ich in die Datenbank geladen habe, widersprüchliche Berechtigungen hat. Als ich mir den SQL-Dump ansah, aus dem ich die Datenbank lud, fand ich den Übeltäter:

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

Wobei someotheruser existierte nicht in meinem lokalen MySQL. Ich habe es wie folgt geändert:

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

Und die Ansicht neu geladen, und alles funktioniert jetzt richtig.