Heim  >  Artikel  >  Datenbank  >  So lösen Sie das MySQL 1146-Fehlerproblem

So lösen Sie das MySQL 1146-Fehlerproblem

藏色散人
藏色散人Original
2021-12-21 16:04:3926825Durchsuche

Mysql 1146-Fehlerlösung: 1. Kopieren Sie ibdata1 in die ursprünglichen MySQL-Installationsverzeichnisdaten. 2. Überprüfen Sie, ob der Benutzer und die Benutzergruppe, zu der die ibdata-Datei gehört, korrekt sind. 3. Verwenden Sie „Tabellennamen reparieren“.

So lösen Sie das MySQL 1146-Fehlerproblem

Die Betriebsumgebung dieses Artikels: Windows 7-System, MySQL-Version 5.7, Dell G3-Computer.

Wie löse ich das MySQL 1146-Fehlerproblem?

MySQL-Eingabeaufforderungstabelle existiert nicht, Lösungerror: 1146: Table doesn‘t exist

Direktes Kopieren der Datenbank führt zu der Lösung, dass die Eingabeaufforderungstabelle nicht existiert

Installieren Sie das Computersystem neu. Nach dem Kopieren der ursprünglichen MySQL-Daten kann auf die meisten Tabellen zugegriffen werden. Einige Tabellen weisen jedoch darauf hin, dass die Tabelle nicht vorhanden ist:

error: 1146: Table 'your_table' doesn't exist

In diesem Fall handelt es sich um ibdata1 in den ursprünglichen MySQL-Installationsverzeichnisdaten muss ebenfalls kopiert werden
INNODB ist eine beliebte Datenbank-Engine für MYSQL-Datenbanken, die Transaktionen (Zeilenebene) unterstützt und so Anwendungen auf Unternehmensebene ermöglicht.
ibdata wird zum Speichern von Dateidaten verwendet, und die Tabellendateien im Ordner mit dem Bibliotheksnamen sind nur Strukturen. Da die neue Version von MySQL standardmäßig Innodb verwendet, ist die Datei ibdata1 standardmäßig vorhanden Etwas ist schief gelaufen.

Wenn Sie nach dem Ersetzen der ibdata-Datei einen Startfehler feststellen

[root@localhost data]# service mysql start
Redirecting to /bin/systemctl start  mysql.service
Job for mysqld.service failed because the control process exited with error code. See "systemctl status mysqld.service" and "journalctl -xe" for details.
[root@localhost data]# systemctl status mysqld.service
● mysqld.service - LSB: start and stop MySQL
   Loaded: loaded (/etc/rc.d/init.d/mysqld; bad; vendor preset: disabled)
   Active: failed (Result: exit-code) since Tue 2019-01-08 18:12:43 CST; 8s ago
     Docs: man:systemd-sysv-generator(8)
  Process: 11815 ExecStop=/etc/rc.d/init.d/mysqld stop (code=exited, status=0/SUCCESS)
  Process: 13300 ExecStart=/etc/rc.d/init.d/mysqld start (code=exited, status=1/FAILURE)

Jan 08 18:12:40 localhost.localdomain systemd[1]: Starting LSB: start and stop MySQL...
Jan 08 18:12:43 localhost.localdomain mysqld[13300]: Starting MySQL... ERROR! The server quit without updating PID file (/www/server/data/localhost.localdomain.pid).
Jan 08 18:12:43 localhost.localdomain systemd[1]: mysqld.service: control process exited, code=exited status=1
Jan 08 18:12:43 localhost.localdomain systemd[1]: Failed to start LSB: start and stop MySQL.
Jan 08 18:12:43 localhost.localdomain systemd[1]: Unit mysqld.service entered failed state.
Jan 08 18:12:43 localhost.localdomain systemd[1]: mysqld.service failed.

Überprüfen Sie zu diesem Zeitpunkt zunächst, ob der Benutzer und die Benutzergruppe, zu der Ihre ibdata-Datei gehört, korrekt sind. Dies kann durch Berechtigungsprobleme verursacht werden.

Wenn die Datentabelle beschädigt ist, versuchen Sie bitte, die Tabelle zu reparieren

Das obige ist der detaillierte Inhalt vonSo lösen Sie das MySQL 1146-Fehlerproblem. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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