Wie kann ich verhindern, dass MySQL beim Booten ausgeführt wird?


55

Derzeit startet mein MySQL-Server bei jedem Serverstart. Aus einigen Gründen ist dies ein unerwünschtes Verhalten. Gibt es eine Möglichkeit, dieses Verhalten zu deaktivieren?

Antworten:


6

Ich kann mir zwei Guis vorstellen. Suchen Sie unter Anwendungen -> Ubuntu Software Center nach "Boot-Manager". Nach der Installation finden Sie es im System -> Administration -> BootUP-Manager. Ein anderer ist Webmin. Webmin verwendet Ihren Browser. Nach der Installation richten Sie Ihren Browser auf https: // localhost: 10000 / Nach Diensten suchen und von dort aus arbeiten.


2
Diese Methode hat am 16.04.
— Mostafa Ahangarha 22.03.17

76

So verhindern Sie, dass MySQL beim Booten gestartet wird:

  1. Öffnen Sie das Terminal: Ctrl+ Alt+T

  2. Öffnen Sie die mysql.confDatei:nano /etc/init/mysql.conf

  3. Kommentieren Sie die start onZeile am oberen Rand der Datei aus. start onDiese kann sich über zwei Zeilen erstrecken. Kommentieren Sie also beide Zeilen aus. (Kommentar #am Anfang hinzufügen )

Wenn Sie mysql manuell starten möchten, verwenden Sie den folgenden Befehl:

service mysql start

Von hier aus großzügig genommen .


3
Dies ist eine sehr nützliche Antwort für mehr als eine Initiierung beim Start.
— Maniat1k

1
Versucht habe ich /usr/sbin/mysqldund /bin/sh /usr/bin/mysqld_saferenne. Hat alles auskommentiert, aber nicht geholfen.
— Emin Mastizada,

IMO das ist die beste Antwort.
— Simhumileco

In Linux Mint 18.2 Cinnamon habe ich /etc/init/mysql.conf ohne Änderung entfernt. MySQL-Server läuft noch beim Start. @ thebugfinder Lösung hat bei mir
— funktioniert

anacron.conf und whoopsie.conf sind alles, was ich in / etc / init @ maniat1k
— Prabesh bhattarai

72

Seit dem 15.04 können Sie einfach tun:

sudo systemctl disable mysql

4
Tatsächlich. Für den 15.04 ist dies die Antwort, die Sie suchen.
— CommandZ

Genial, endlich habe ich eine Lösung dafür gefunden! Die anderen Methoden funktionieren für mich nicht.
— Rneves

Ich kann es nicht erneut starten. Wie starte ich mysql nach dem Befehl?
— Rneves

@rneves hast du versucht enableoder reenable?
— Thebugfinder

1
@ Thebugfinder Ich habe versucht enable, ich weiß nicht reenable, aber enablezwingt mich, den Computer neu zu starten, um MySQL erneut zu starten
— Rneves

8

In Ubuntu hat sich jetzt einiges getan. Ich denke ab Version 11. MySQL wird von Upstart verwaltet, während Apache noch traditionelle SysV-Init- Skripte verwendet

Für MySQL können Sie die neue Überschreibungsfunktion in Upstart verwenden , um das Startverhalten zu ändern:

sudo echo "manual" >> /etc/init/mysql.override

Weitere Informationen finden Sie im Abschnitt " Deaktivieren eines Jobs für den automatischen Start " im Upstart-Kochbuch.

Da Apache immer noch die traditionellen SysV-Init- Skripte verwendet, die Sie verwenden können

sudo update-rc.d -f apache2 remove

zum entfernen der links von /etc/rcX.doder alternativ verwenden sie

sudo update-rc.d apache2 disable

Dadurch wird das Skript "deaktiviert", indem es von einem Startskript in ein Stoppskript geändert wird. Dies ist umkehrbar durch

sudo update-rc.d apache2 enable

Die meisten dieser Informationen habe ich hier erhalten: https://askubuntu.com/a/40077/24678


Wenn Sie den Dienst wiederherstellen möchtensudo update-rc.d apache2 defaults
— Bentech

3

sudo systemctl disable mysqlVerhindert in Ubuntu 18.04 das mysql-serverautomatische Starten beim Booten.

Für Linux gibt es 3 Haupt-init - Systeme: Systemd, Upstartund SysV. Obwohl fast alle Linux-Systeme auf Systemd laufen. Die beiden anderen Init-Systeme können ebenfalls in Ihrem System vorhanden sein.

Für Systemd, verwenden Sie den Befehl sudo systemctl disable mysql;
Für die UpstartVerwendung echo manual >> /etc/init/mysql.override;
Für SysVFühren Sie den folgenden Befehlsudo update-rc.d mysql disable

Wenn Sie herausfinden möchten, welches Init-System auf Ihrem Server ausgeführt wird, lesen Sie bitte diese Antwort .


2

Oder wenn Sie wirklich so faul sind wie ich, können Sie einfach eine Terminal-Sitzung eröffnen und dann Folgendes eingeben:

sudo perl -pi.orig -e 's/start\s+on/#start\s+on/' /etc/init/mysql.conf && sudo perl -pi.orig -e 's/and\s+/#and/g' /etc/init/mysql.conf

Sie können dann einfach einen Neustartbefehl absetzen, dann wird Ihr System gestartet, ohne dass mysql gestartet wurde.


1
Dieser Befehl könnte verbessert werden. Es fügt ein +Verlassen der Zeile wie folgt hinzu : #start+on blahblahblahAber es funktioniert!
— Lucio

2

Tatsächlich gibt es auch eine andere Methode, um dies über das Tool sysv-rc-conf zu erreichen.

Sie können es durch Eingabe installieren

sudo apt-get install sysv-rc-conf

Hiermit können Sie die Kontrolle über alle verfügbaren Dienste übernehmen, einschließlich deren Ausführung / Beendigung und der Konfiguration des Betriebs der Dienste nach Runlevel.

Bearbeiten: Sie müssen dieses Tool als root ausführen:

sudo sysv-rc-conf

0

Sie können das chkconfigToolpaket verwenden

$ chkconfig --level 345 mysqld off

2
Bitte erläutern Sie Ihre Antwort. Warum löst das wohl die Frage? Sie können beispielsweise einen Link zu einem Handbuch als Referenz hinzufügen.
— Byte Commander
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.