Der MySQL-Dienst auf dem lokalen Computer wurde gestartet und dann gestoppt. Einige Dienste werden automatisch beendet, wenn sie nicht von anderen Diensten oder Programmen verwendet werden.
Kann jemand dieses Problem beheben? Vielen Dank.
Der MySQL-Dienst auf dem lokalen Computer wurde gestartet und dann gestoppt. Einige Dienste werden automatisch beendet, wenn sie nicht von anderen Diensten oder Programmen verwendet werden.
Kann jemand dieses Problem beheben? Vielen Dank.
Antworten:
Nach der Installation von mysqld --install
. Versuchen Sie dies mysqld --initialize
. Wir haben das gleiche Problem, aber es funktioniert jetzt.
MYSQL80
Service schon einmal genutzt. Irgendwie startet es nicht, ich starte es normalerweise manuell über Services, aber jetzt funktioniert es nicht mehr
cmd
als Administrator geöffnet , die Befehle ausgeführt mysqld --install
und mysqld -- initialize
. Dann mysql
in Diensten geöffnet und den Dienst gestartet. Es hat so funktioniert
Wenn Sie Version 8 verwenden und die Datei my.ini bearbeiten, habe ich festgestellt, dass Notepad 3 Hex-Zeichen am Anfang der Datei my.ini einfügt. EF BB BF. Das Löschen der 3 Zeichen vom Anfang der Datei in einem Hex-Editor behebt das Problem.
In Version 8 werden versehentlich Unicode-Zeichen in die INI-Datei eingefügt. Dies führt dazu, dass Notepad die Datei mit Byte-Bestellmarkenzeichen speichert.
Die folgende Zeile in der Datei ist der Schuldige. "Die Zeile # reicht von 1 bis 2 ^ 32 - 1." Eindeutig "bedeutet, dass jede ID unterschiedlich sein muss." hat 3 Unicode-Zeichen. Dies führt dazu, dass der Editor das Byte-Ordnungszeichen an die Textdatei anfügt.
Denken Sie auch daran, dem Ordner die Berechtigung NETWORK SERVICE zu erteilen:
Data
OrdnerProperties
Security
RegisterkarteAdvanced
Change Permissions...
Add...
NETWORK SERVICE
Check Names
OK
Full Control
OK
- viermalIn meinem Fall habe ich versucht, eine DOS-Eingabeaufforderung zu öffnen, in das MySQL- bin\
Verzeichnis zu wechseln und den folgenden Befehl auszuführen:
mysqld --defaults-file="C:\Program Files\MySQL\MySQL Server 5.0\my.ini" --standalone --console
Und es zeigt mir, dass mir der "C:\Program Files\MySQL\MySQL Server 5.0\Uploads"
Ordner gefehlt hat ; Ich habe einen gebaut und das Problem gelöst.
Dies kann an einer Änderung liegen, lower_case_table_names
nachdem ein Server bereits initialisiert wurde.
Kleinbuchstaben_Tabellennamen können nur bei der Initialisierung des Servers konfiguriert werden. Das Ändern der Einstellung für Kleinbuchstaben_Tabellennamen nach der Initialisierung des Servers ist nicht zulässig.
Die Lösung für dieses Problem besteht darin, die lower_case_table_names
Parameter bei der Serverinstallation wie in der folgenden Antwort beschrieben festzulegen:
In MySQL 8.x unter Windows 10 können keine Kleinbuchstaben-Tabellennamen festgelegt werden
Nichts hat bei mir funktioniert, aber dann habe ich hier nachgesehen . Ich habe diesen Befehl ausgeführt qc sc mysql57
und den Wert BINARY_PATH_NAME
von daraus kopiert . Danach überprüfte ich dies und den Wert geändert lower_case_table_names
von 0 bis 2 in my.ini
Datei. Dann habe ich in der Eingabeaufforderung diesen Befehl ausgeführt - << BINARY_PATH_NAME >> --install-manual
. Danach habe ich den MySQL57-Dienst gestartet und es hat funktioniert.
Verwenden von Community 8.0.17, aktualisiert von 8.0.16
Es mag einen sichereren Weg geben, dies zu tun, aber da ich nur eine Entwicklungsbox verwende:
Sie sollten jetzt alle erforderlichen Datendateistrukturen im Datenordner sehen. Wenn sie nicht erstellt werden, hat der mysqld-Prozess einen Konflikt oder eine unangemessene Sicherheit, um korrekt in den Ordner zu schreiben.
Starten Sie nun Ihren benannten Dienst auf die von Ihnen gewünschte Weise (SC / NET / service.msc usw.).
Angenommen, alle Dateien wurden ordnungsgemäß erstellt, indem --initialize den Dienst startet.
Dieses Problem ist so kompliziert und hängt von der MySQL-Version ab. Mein Problem ist unter MySQL 8.0.2 aufgetreten. Wenn ich meine.ini-Datei auf dem Editor konfiguriert und gespeichert habe. Ich habe folgende @ jhersey29-Lösung https://stackoverflow.com/a/55519014/1764354, aber wenig andere Vorgehensweise.
Meine Lösung besteht darin, die Datei my.ini wiederherzustellen und den Konfigurationswert über Optionsdateien in der WorkBench-Anwendung zu bearbeiten. Beispiel für das workBench-Menü
Benennen oder löschen Sie den Ordner unter,
C: \ ProgramData \ MySQL \ MySQL Server 5.7
Änderung des Ordnernamens gemäß Ihrer MYSQL- Versionsnummer.
Dieser Fehler trat in meinem Fall auf, als Secure-File-Priv auf einen nicht vorhandenen Ordner zeigte. Stellen Sie sicher, dass dieser vorhanden und lesbar ist.
Das Beispiel für eine Codezeile in my.ini:
secure-file-priv="D:/MySQL/uploads"
Befolgen Sie die nachstehenden Anweisungen, um Ihren Tag zu retten:
Wenn Sie my.ini nicht korrekt ändern, wird das Problem "Der MySQL-Dienst auf dem lokalen Computer wurde gestartet und dann gestoppt" angezeigt. Sie müssen Ihre my.ini also erneut unter "C: \ ProgramData \ MySQL \ MySQL Server 8.0 \ my.ini" überprüfen, um sicherzustellen, dass kein seltsamer Befehl vorhanden ist. Wenn Sie das Original nicht kennen und wiederherstellen möchten, können Sie im Web mit dem Schlüsselwort "my.ini configuration" suchen , das neueste herunterladen und in "C: \ ProgramData \ MySQL \ MySQL Server 8.0 \ my.ini" kopieren ""
Für wen Sie den SQL-Dienst unter Windows oder Linux löschen, können Sie die folgenden Schritte ausführen:
(Fenster)
Aktuellen Dienst löschen
Sie müssen MySQL80 / MySQLXX in Service stoppen, bevor Sie die folgende Aktion ausführen können: Öffnen Sie die Befehlszeile von Window und führen Sie sie als Administrator aus
sc delete mysql80 <= Wenn Sie mysql80 verwenden, wird MySQL80 in Service gelöscht
sc delete mysql <= Wenn Sie "mysql --initliaze" verwenden, wird MySQL in Service gelöscht
Der Befehl mysqld --initialize erstellt einfach MySQL im Dienst von Windows oder Linux
Wenn Sie also Path Executable aktivieren, fehlt my.ini, sodass Sie MySQL Server nicht verwenden können, obwohl MySQL Service funktioniert
Für MySQL80
"C: \ Programme \ MySQL \ MySQL Server 8.0 \ bin \ mysqld.exe" - MySQL80 installieren --defaults-file = "C: \ ProgramData \ MySQL \ MySQL Server 8.0 \ my.ini"
Für MySQLXX
"C: \ Programme \ MySQL \ MySQL Server XX \ bin \ mysqld.exe" - MySQLXX installieren --defaults-file = "C: \ ProgramData \ MySQL \ MySQL Server XX \ my.ini"
=> Es wird ein MySQLXX-Dienst erstellt, der mit my.ini arbeitet
Dann funktioniert MySQL normal und Sie müssen MySQL nicht erneut installieren.
Ich benutze kein Linux oder Mac, daher kann ich keine Anweisungen geben. Die Antwort finden Sie oben als Referenz
In meinem Fall wurde mysqld ohne Fehlermeldung gestartet und gestoppt. Ich musste die Eingabeaufforderung mit "Als Administrator ausführen" öffnen und dann mysqld ausführen.
Ich mache das nur für die vorübergehende Entwicklung. Ich würde auf keinen Fall empfehlen, MySQL als Administrator auszuführen.
Dies war der letzte Schritt nach der obigen Fehlerbehebung.
Suchen Sie nach services.msc und durchsuchen Sie Ihre Dienste, die ausgeführt werden, wenn bereits ein anderer MySQL-Dienst als der von Ihnen gewünschte (z. B. xampp oder wamp) oder ein anderer Dienst (z. B. Skype) über denselben Port ausgeführt wird als MySQL und beenden Sie den Dienst, damit Sie Ihren MySQL-Dienst ausführen können.
Ich hatte dieses Problem, nachdem meine Datenbank lange Zeit einwandfrei funktioniert hatte. Es stellte sich heraus, dass es sich um eine Datenbeschädigung handelte.
Im Fehlerprotokoll hatte ich:
2017-02-07T10:11:42.270567Z 0 [ERROR] InnoDB: Ignoring the redo log due to missing MLOG_CHECKPOINT between the checkpoint 44002250712 and the end 44002250240.
2017-02-07T10:11:42.270606Z 0 [ERROR] InnoDB: Plugin initialization aborted with error Generic error
2017-02-07T10:11:42.577436Z 0 [ERROR] Plugin 'InnoDB' init function returned error.
2017-02-07T10:11:42.577470Z 0 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
2017-02-07T10:11:42.577484Z 0 [ERROR] Failed to initialize plugins.
2017-02-07T10:11:42.577488Z 0 [ERROR] Aborting
Dann musste ich die 2 ib_logfile * -Dateien löschen und es wurde neu gestartet.
Möglicherweise haben Sie auch versehentlich einen falschen Text in die my.ini
Datei eingefügt . Stellen Sie sicher, dass am Anfang der Datei kein ungültiges Zeichen hinzugefügt wird.
Ich sehe diesen Fehler, wenn ich MySQL 8.x installiere, das max_allowed_packet in der Datei my.ini bearbeite und dann mysql auf einem Windows 10-Computer neu starte. Um dieses Problem zu vermeiden, empfehle ich, die Datei my.ini in einem Hex-Editor (so etwas wie Frhed) zu bearbeiten. NICHT NOTEPAD VERWENDEN. Es hat etwas mit dem Hex-Layout der INI-Datei zu tun.
Der MySQL-Dienst auf dem lokalen Computer wurde gestartet und dann gestoppt
Dieser Fehler tritt auf, wenn Sie my.ini in C: \ ProgramData \ MySQL \ MySQL Server 8.0 \ my.ini nicht korrekt geändert haben.
Sie können die ursprüngliche Konfiguration von my.ini durchsuchen oder Ihre überprüfen, um sicherzustellen, dass alles in Ordnung ist
Wenn Sie bei der Installation von WAMP64 unter Windows 10 darauf gestoßen sind. Überprüfen Sie, ob der Datenordner im MySQL-Ordner fehlt. Bei der Installation meiner WAMP 3.2.3-Version konnte ein solcher Ordner nicht erstellt werden. Das Wamp-Symbol war also orange (1 von 2 laufenden Diensten).
Eine schnelle Lösung bestand darin, diesen Befehl vom MySQL-Speicherort aus auszuführen.
C:\wamp64\bin\mysql\mysql5.7.31\bin\
mysqld --initialize-insecure
Keine der oben genannten Funktionen funktioniert tatsächlich. Löschen Sie MySQL, installieren Sie MySQL neu und stellen Sie sie gegebenenfalls wieder her
Wenn Sie das Datenverzeichnis (den Pfad zum Datenbankstamm in my.ini) auf eine externe Festplatte geändert haben, stellen Sie sicher, dass die Festplatte verbunden ist.