Heim > Datenbank > MySQL-Tutorial > Warum erscheint meine MySQL-Tabelle in SHOW TABLES, aber nicht in SELECT-Abfragen?

Warum erscheint meine MySQL-Tabelle in SHOW TABLES, aber nicht in SELECT-Abfragen?

Mary-Kate Olsen
Freigeben: 2024-12-07 05:49:12
Original
760 Leute haben es durchsucht

Why Does My MySQL Table Appear in SHOW TABLES But Not in SELECT Queries?

MySQL-Tabellenverschwinden-Rätsel gelöst

Wenn eine Inkonsistenz auftritt, bei der SHOW TABLES eine Tabelle anzeigt, auf die für Datenoperationen wie SELECT nicht zugegriffen werden kann, Die zugrunde liegende Ursache bleibt oft unklar. Ein möglicher Schuldiger ist eine beschädigte Tabellendatei, die von SHOW TABLES möglicherweise nicht erkannt wird.

In einem bestimmten Fall ist ein Benutzer auf dieses Problem gestoßen, nachdem er das MySQL-Datenverzeichnis geändert hatte. Obwohl die Dateien der Tabelle vorhanden waren, führte die Auswahl von Daten daraus zu folgendem Fehler:

ERROR 1146 (42S02): Table 'database.TABLE_ONE' doesn't exist
Nach dem Login kopieren

Dieses paradoxe Verhalten führte zu Spekulationen, dass SHOW TABLES nur die Existenz der Datei überprüft, nicht die Integrität. Allerdings wurde schließlich die Ursache des Problems entdeckt:

  • Die betreffende Datenbank verwendete InnoDB-Tabellen, die auf den im MySQL-Datenverzeichnis gespeicherten Dateien ibdata1 und ib_logfile basieren.
  • Diese Dateien waren im neuen Datenverzeichnis nicht vorhanden, als die Datenbank verschoben wurde.

Um das Problem zu beheben, hat der Benutzer diese Dateien in das neue kopiert Datenverzeichnis, wodurch die Tabellenzugänglichkeit erfolgreich wiederhergestellt wurde. Dies unterstreicht, wie wichtig es ist, diese Dateien beim Kopieren von InnoDB-basierten Datenbanken einzubeziehen, um deren Funktionalität sicherzustellen.

Das obige ist der detaillierte Inhalt vonWarum erscheint meine MySQL-Tabelle in SHOW TABLES, aber nicht in SELECT-Abfragen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage