Plötzlich lief mein lokaler MySQL 5.5-Server auf meinem Windows XP SP3 nicht mehr.
Ich habe auch WAMP Apache und WAMP MySQL installiert, aber WAMP MySQL läuft nicht. Das Fehlerprotokoll zeigt:
- Server kann nicht gestartet werden: Bindung an TCP / IP-Port: Keine solche Datei oder kein solches Verzeichnis
- Haben Sie bereits einen anderen mysqld-Server auf Port: 3306?
Ich habe versucht, den Port von 3306 auf 3307 zu ändern, aber der Dienst wurde immer noch nicht gestartet, was zu einem Fehler führte:
Die Ereignisanzeige zeigt:
- Schwerwiegender Fehler: Berechtigungstabellen können nicht geöffnet und gesperrt werden: Die Tabelle 'mysql.host' ist nicht vorhanden
- Die Tabelle mysql.plugin kann nicht geöffnet werden. Bitte führen Sie mysql_upgrade aus, um es zu erstellen.
Anscheinend kann ich mysql_upgrade nur ausführen, wenn der Server ausgeführt wird. Wie kann ich 'mysql.host' erstellen, wenn der Dienst nicht gestartet werden kann?
Ich habe MySQL Server deinstalliert und neu installiert. Während des Konfigurationsassistenten nach der Installation wird die folgende Fehlermeldung angezeigt: Der Dienst konnte nicht gestartet werden. Fehler: 0.
Wie gehe ich von hier aus vor?
Antworten:
Führen Sie den folgenden Befehl aus
quelle
systemctl status mysqld.service 2015-02-20 15:41:07 15160 [ERROR] Fatal error: Can't open and lock privilege tables: Table 'mysql.user' doesn't exist
Initialisieren Sie MySQL, bevor Sie unter Windows starten.
quelle
Als erstes müssen Sie die folgenden Befehle ausführen:
Bitte beachten Sie die Unterschiede
MySQL 5.0 enthält 17 Tabellen im MySQL-Schema
MySQL 5.1 enthält 23 Tabellen im MySQL-Schema
MySQL 5.5 enthält 24 Tabellen im MySQL-Schema
Bitte beachten Sie, dass mysql.plugin in MySQL 5.0 nicht vorhanden ist. Es ist sehr plausibel zu vermuten, dass Sie MySQL 5.0 irgendwie installiert und wichtige Tabellen für MySQL 5.5 verschwinden lassen.
Hier sind einige gute Neuigkeiten. Sie können etwas ausprobieren.
Für dieses Beispiel
Hier sind deine Schritte
Das ist es.
Wenn Sie dies unter Windows ausführen, müssen dieselben Prinzipien gelten.
Versuche es !!!
UPDATE 29.07.2011 16:15 EDT
Wenn Ihre Benutzernamen DB-spezifische Berechtigungen hatten, sind hier Ihre Schritte
quelle
Fügen Sie den Umgebungsvariablen den MySQL-Pfad hinzu.
quelle
Es sieht so aus, als ob MySQL bereits läuft
Versuchen
Wenn Sie eine Ausgabe sehen, müssen Sie diese wahrscheinlich stoppen (oder die Box neu starten).
Wenn Sie keine Ausgabe sehen, versuchen Sie, mysqld ohne Dämonisierung auszuführen, und sehen Sie die Ausgabe.
quelle
Ich habe ein Windows-Tag hinzugefügt, um die Beantwortung der Frage zu erleichtern.
Mein Hintergrund ist nicht Windows, aber die Prinzipien gelten.
Läuft bereits ein MySQL-Prozess? In diesem Fall müssen Sie es vor der Deinstallation beenden. Wenn es beim Versuch der Deinstallation / Neuinstallation noch ausgeführt wurde, hängen Prozesse und Dateien herum und verhindern eine vollständige Deinstallation.
Öffnen Sie das Dienstfenster, suchen Sie nach etwas mit MySQL im Namen und stellen Sie sicher, dass nicht versucht wird, mit einem Neustart zu beginnen. Öffnen Sie dann die Registerkarte "Laufende Prozesse" des Fensters "Laufende Programme" (öffnen Sie sie mit STRG-ALT-ENTF) und suchen und beenden Sie laufende Prozesse mit MySQL im Namen.
Wenn Sie zufrieden sind, dass keine MySQL-Prozesse mehr ausgeführt werden, können Sie fortfahren. Möglicherweise möchten Sie einen Neustart durchführen, um sicherzustellen, dass keine laufenden MySQL-Prozesse mehr hängen.
Zu diesem Zeitpunkt sollten Sie in der Lage sein, mysql neu zu installieren und zu starten.
quelle
Führen Sie mysql-test-run aus und Sie sollten die folgende Ausgabe sehen:
quelle
Wenn Sie Ihren Datenverzeichnis verschieben, müssen Sie nicht nur die neuen Datenverzeichnisberechtigungen erteilen, sondern auch sicherstellen, dass alle übergeordneten Verzeichnisse über Berechtigungen verfügen.
Ich habe meinen Datadir auf eine Festplatte verschoben, die in Ubuntu wie folgt gemountet ist:
und mein Datenverzeichnis war Datenbanken .
Ich musste für jedes Medien-, Benutzer- und Datenverzeichnis die Berechtigung 771 festlegen :
Wenn dies nicht funktioniert, können Sie MySQL auch zum Laufen bringen, indem Sie den Benutzer in /etc/mysql/my.cnf in root ändern. Es gibt jedoch zweifellos einige Probleme, dies aus Sicherheitsgründen zu tun.
quelle