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?
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:
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.
So verhindern Sie, dass MySQL beim Booten gestartet wird:
Öffnen Sie das Terminal: Ctrl+ Alt+T
Öffnen Sie die mysql.conf
Datei:nano /etc/init/mysql.conf
Kommentieren Sie die start on
Zeile am oberen Rand der Datei aus. start on
Diese 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
/usr/sbin/mysqld
und /bin/sh /usr/bin/mysqld_safe
renne. Hat alles auskommentiert, aber nicht geholfen.
Seit dem 15.04 können Sie einfach tun:
sudo systemctl disable mysql
enable
oder reenable
?
enable
, ich weiß nicht reenable
, aber enable
zwingt mich, den Computer neu zu starten, um MySQL erneut zu starten
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.d
oder 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
sudo update-rc.d apache2 defaults
sudo systemctl disable mysql
Verhindert in Ubuntu 18.04 das mysql-server
automatische Starten beim Booten.
Für Linux gibt es 3 Haupt-init - Systeme: Systemd
, Upstart
und 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 Upstart
Verwendung echo manual >> /etc/init/mysql.override
;
Für SysV
Fü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 .
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.
+
Verlassen der Zeile wie folgt hinzu : #start+on blahblahblah
Aber es funktioniert!
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
Sie können das chkconfig
Toolpaket verwenden
$ chkconfig --level 345 mysqld off