496 Stimmen

Wie löse ich den Fehler "Error: MySQL wurde unerwartet heruntergefahren"?

Wenn ich XAMPP öffne und auf die Schaltfläche "MySQL starten" klicke, erhalte ich einen Fehler. Ich hatte es gerade erst gestartet, aber jetzt funktioniert es nicht.

12:19:12 PM [mysql] Versuche MySQL-App zu starten...
12:19:12 PM [mysql] Statusänderung erkannt: läuft
12:19:13 PM [mysql] Statusänderung erkannt: gestoppt
12:19:13 PM [mysql] Fehler: MySQL unerwartet beendet.
12:19:13 PM [mysql] Dies könnte auf einen blockierten Port, fehlende Abhängigkeiten, falsche Berechtigungen, einen Absturz oder ein Herunterfahren durch eine andere Methode zurückzuführen sein.
12:19:13 PM [mysql] Drücken Sie die Schaltfläche Protokolle, um Fehlerprotokolle anzuzeigen und überprüfen
12:19:13 PM [mysql] den Windows Event Viewer für weitere Hinweise.
12:19:13 PM [mysql] Wenn Sie weitere Hilfe benötigen, kopieren Sie dieses
12:19:13 PM [mysql] gesamte Protokollfenster und posten Sie es in den Foren

Hier ist der Inhalt des Fehlerprotokolls:

2013-08-02 12:19:12 4536 [Hinweis] Plugin 'FEDERATED' ist deaktiviert.
2013-08-02 12:19:12 f64 InnoDB: Warnung: Die Verwendung von innodb_additional_mem_pool_size ist VERALTET. Diese Option kann in zukünftigen Versionen zusammen mit der Option innodb_use_sys_malloc und dem internen Speicheralloktor von InnoDB entfernt werden.
2013-08-02 12:19:12 4536 [Hinweis] InnoDB: Der InnoDB-Speicherhaufen ist deaktiviert.
2013-08-02 12:19:12 4536 [Hinweis] InnoDB: Mutexe und rw_locks verwenden Windows-interne Funktionen
2013-08-02 12:19:12 4536 [Hinweis] InnoDB: Komprimierte Tabellen verwenden zlib 1.2.3
2013-08-02 12:19:12 4536 [Hinweis] InnoDB: Keine Verwendung von CPU crc32-Anweisungen
2013-08-02 12:19:12 4536 [Hinweis] InnoDB: Initialisierung des Pufferpools, Größe = 16,0M
2013-08-02 12:19:12 4536 [Hinweis] InnoDB: Initialisierung des Pufferpools abgeschlossen
2013-08-02 12:19:12 4536 [Hinweis] InnoDB: Höchst unterstütztes Dateiformat ist Barracuda.
2013-08-02 12:19:12 4536 [Hinweis] InnoDB: Die Log-Sequenznummern 0 und 0 in ibdata-Dateien stimmen nicht mit der Log-Sequenznummer 1616798 in den ib_logfiles überein!
2013-08-02 12:19:12 4536 [Hinweis] InnoDB: Die Datenbank wurde nicht ordnungsgemäß heruntergefahren!
2013-08-02 12:19:12 4536 [Hinweis] InnoDB: Starte Crash-Recovery.
2013-08-02 12:19:12 4536 [Hinweis] InnoDB: Lese Tablespace-Informationen aus den .ibd-Dateien...

Die wichtigste Fehlermeldung lautet hier:

2013-08-02 12:19:12 4536 [FEHLER] InnoDB:
Versuchte, einen zuvor geöffneten Tablespace zu öffnen.
Vorheriger Tablespace mysql/innodb_table_stats verwendet die Space-ID: 1 im Dateipfad: .\mysql\innodb_table_stats.ibd.
Kann Tablespace xat/payments nicht öffnen, der die Space-ID: 1 im Dateipfad: .\xat\payments.ibd verwendet

Der Rest des Protokolls:

InnoDB: Fehler: Die einzelne Tabellen-Tablespace-Datei .\xat\payments.ibd konnte nicht geöffnet werden
InnoDB: Wir setzen die Crash-Recovery nicht fort, da die Tabelle beschädigt werden könnte
InnoDB: wenn wir die Logdatensätze im InnoDB-Log nicht darauf anwenden können.
InnoDB: Um das Problem zu lösen und mysqld zu starten:
InnoDB: 1) Wenn es ein Berechtigungsproblem in der Datei gibt und mysqld die
InnoDB: Datei nicht öffnen kann, sollten Sie die Berechtigungen ändern.
InnoDB: 2) Wenn die Tabelle nicht benötigt wird oder Sie sie aus einem Backup wiederherstellen können,
InnoDB: können Sie die .ibd-Datei entfernen, und InnoDB wird eine normale
InnoDB: Crash-Recovery durchführen und diese Tabelle ignorieren.
InnoDB: 3) Wenn das Dateisystem oder die Festplatte defekt ist und Sie die
InnoDB: .ibd-Datei nicht entfernen können, können Sie innodb_force_recovery > 0 in my.cnf setzen
InnoDB: und InnoDB zwingen, die Crash-Recovery fortzusetzen.

Was ist die Ursache dieser Fehler und wie kann ich sie beheben?

1voto

ticky Punkte 353

Ich habe buchstäblich jede Datei von c:\xampp\mysql\data\ außer my.ini gelöscht, und es funktioniert

1voto

Muhammad suhaib Punkte 31

Zunächst einmal erstellen Sie eine Sicherungskopie Ihrer Datenbankdatei C:\xampp\mysql\data. Kopieren Sie diese Datei und fügen Sie sie an einem anderen Ort auf Ihrem PC ein. Öffnen Sie anschließend die Daten-Datei und öffnen Sie auch den XAMPP-Server. Versuchen Sie, die Dateien schrittweise und nacheinander zu löschen. Nach dem Löschen jeder Datei versuchen Sie, den MySQL-Server auszuführen, wie im Screenshot gezeigt, damit Ihre Datenbanken nicht gelöscht werden. Wenn das Löschen der Datei nicht funktioniert, versuchen Sie, die gleichen Dateien aus den Sicherungsfoldern zu kopieren und wiederholen Sie den Vorgang, bis es funktioniert... Dies dauert zwar einige Zeit, hat aber bei mir funktioniert. Ich habe das Problem in 20 Minuten gelöst. Bildbeschreibung hier eingeben

0voto

Akram Elhaddad Punkte 146

Denken Sie daran, diese Datei (ibdata1) niemals zu löschen, da sonst alle Ihre Daten gelöscht werden

1- Stoppen Sie alle laufenden XAMPP-Dienste (Apache, MySQL, usw.)

2- Umbenennen Sie den XAMPP-Ordner in xampp-old

3- Installieren Sie eine frische XAMPP-Version

4- Stellen Sie die Datenbanken wieder her, indem Sie diese 3 Dateien (ibdata1, ib_logfile0, ib_logfile1) + Ihre erstellten Datenbankordner von xampp-old aus diesem Pfad kopieren

xampp-old\mysql\data

nach

xampp\mysql\data

und akzeptieren Sie den Ersatz von Dateien

5- Stellen Sie codierte Dateien wieder her, indem Sie xampp-old\htdocs nach xampp\htdocs übertragen

Starten Sie jetzt XAMPP neu, es wird mit all Ihren Daten funktionieren

Bitte beachten Sie: Wenn Sie appache- oder MySQL-Ini-Dateien bearbeiten müssen, tun Sie dies erneut

0voto

Mohamed Tarek Punkte 19

Gehe zuerst zu "Config" im Control Panel

Ändere dann den Port von MySQL auf 8111

Gehe dann zu der Datei my.ini unter C:\xampp\mysql\bin

Ändere den Port von 3306 auf 8111 und speichere dann

Gehe zum Control Panel und stoppe den Apache
versuche dann, ihn wieder mit MySQL einzuschalten, es wird bei mir funktionieren

0voto

Varun Kakathiya Punkte 47

Öffnen Sie die Konfigurationsdatei von MuSQL in Xamp und ändern Sie die Portnummer auf 3307 Es hat bei mir funktioniert :)

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X