Jak zatrzymać mysql przed uruchomieniem?

55

Obecnie mój serwer MySQL uruchamia się przy każdym uruchomieniu serwera. Z kilku powodów jest to niepożądane zachowanie. Czy istnieje sposób na wyłączenie tego zachowania?

Иван Бишевац
źródło

Odpowiedzi:

6

Są dwa Gui, o których mogę myśleć. W aplikacjach -> Centrum oprogramowania Ubuntu wyszukaj „menedżer rozruchu”. Po instalacji znajdziesz go w Systemie -> Administracja -> BootUP-Manager. Innym jest Webmin. Webmin używa twojej przeglądarki. Po zainstalowaniu skieruj swoją przeglądarkę na https: // localhost: 10000 / Wyszukaj usługi i stamtąd.

dziobać
źródło
2
Ta metoda nie zadziałała dla mnie 16.04
Mostafa Ahangarha
76

Aby zapobiec uruchamianiu mysql podczas rozruchu:

  1. Otwórz terminal: Ctrl+ Alt+T

  2. Otwórz mysql.confplik:nano /etc/init/mysql.conf

  3. Skomentuj start onlinię w górnej części pliku, start onmoże być rozłożona na dwie linie, więc skomentuj oba. (dodawanie komentarza #na początku)

Jeśli chcesz ręcznie uruchomić mysql, użyj następującego polecenia:

service mysql start

Zrobione swobodnie stąd.

Kris Harper
źródło
3
Jest to bardzo przydatna odpowiedź dla więcej niż jednej inicjacji podczas uruchamiania.
maniat1k
1
Próbowałem, mam /usr/sbin/mysqldi /bin/sh /usr/bin/mysqld_safebiegnę. Skomentował wszystko, ale nie pomógł.
Emin Mastizada,
IMO to najlepsza odpowiedź.
simhumileco
w Linux Mint 18.2 Cinnamon usunąłem /etc/init/mysql.conf bez zmian. Serwer MySQL nadal działa podczas uruchamiania. Rozwiązanie @bugfinder działało dla mnie
flyingdrifter
anacron.conf i whoopsie.conf to wszystko, co widzę w / etc / init @ maniat1k
Prabesh bhattarai
72

Od 15.04 możesz po prostu zrobić:

sudo systemctl disable mysql
bugbinder
źródło
4
W rzeczy samej. Dla 15.04 jest to odpowiedź, której szukasz.
CommandZ
Wspaniale, w końcu znalazłem rozwiązanie tego problemu! Inne metody mi nie działają.
rneves 22.03.16
Nie mogę go uruchomić ponownie, jak uruchomić mysql po wydaniu polecenia?
rneves 22.03.16
@rneves próbowałeś enablelub reenable?
thebugfinder
1
@thebugfinder Próbowałem enable, nie wiem o reenable, ale enablezmusza mnie do ponownego uruchomienia komputera, aby ponownie uruchomić mysql
rneves
8

W Ubuntu wszystko się zmieniło. Myślę, że począwszy od wersji 11. MySQL jest obsługiwany przez Upstart podczas Apache nadal korzysta z tradycyjnych startowych SysV skrypty

W przypadku MySQL możesz użyć nowej funkcji zastępowania w Upstart, aby zmodyfikować zachowanie początkowe:

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

Aby uzyskać więcej informacji, zobacz sekcję „ Wyłączanie automatycznego uruchamiania zadania” w podręczniku Upstart Cookbook.

Ponieważ Apache nadal używa tradycyjnych skryptów inicjujących SysV, których możesz używać

sudo update-rc.d -f apache2 remove

aby usunąć linki z /etc/rcX.dlub alternatywnie użyj

sudo update-rc.d apache2 disable

co „wyłącza” skrypt, zmieniając go ze skryptu początkowego na skrypt zatrzymujący. Jest to odwracalne przez

sudo update-rc.d apache2 enable

Większość tych informacji otrzymałem stąd: https://askubuntu.com/a/40077/24678

Wavesailor
źródło
Jeśli chcesz przywrócić usługęsudo update-rc.d apache2 defaults
bentech
3

W Ubuntu 18.04 sudo systemctl disable mysqlzapobiegnie automatycznemu mysql-serveruruchamianiu podczas rozruchu.

Dla Linuksa, istnieją 3 główne systemy startowe: Systemd, Upstarti SysV. Chociaż prawie wszystkie systemy Linux działają na Systemd. Pozostałe dwa systemy inicjujące mogą również współistnieć w twoim systemie.

Dla Systemdużyj polecenia sudo systemctl disable mysql;
Do Upstartużycia echo manual >> /etc/init/mysql.override;
Dla SysVuruchom następujące poleceniesudo update-rc.d mysql disable

Jeśli chcesz dowiedzieć się, który system init działa na twoim serwerze, przeczytaj tę odpowiedź .

Yossarian42
źródło
2

Lub jeśli naprawdę jesteś taki leniwy, możesz po prostu otworzyć sesję terminalową, a następnie wpisać:

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

Następnie możesz po prostu wydać polecenie restartu, a następnie system uruchomi się bez uruchomionego mysql.

Justin Andrusk
źródło
1
To polecenie można poprawić. Dodaje linię +opuszczającą w ten sposób: #start+on blahblahblahale działa!
Lucio
2

W rzeczywistości istnieje również inna metoda osiągnięcia tego celu za pomocą narzędzia sysv-rc-conf.

Możesz go zainstalować, pisząc

sudo apt-get install sysv-rc-conf

Umożliwia przejęcie kontroli nad wszystkimi dostępnymi usługami, w tym ich uruchamianie / zatrzymywanie na miejscu i konfigurowanie działania usług dla poszczególnych poziomów pracy.

Edycja: Musisz uruchomić narzędzie tis jako root:

sudo sysv-rc-conf
errikos
źródło
0

Możesz użyć chkconfigpakietu narzędzi

$ chkconfig --level 345 mysqld off
Thoman
źródło
2
Proszę opracować swoją odpowiedź. Jak myślisz, dlaczego to rozwiązuje pytanie? Możesz np. Dodać link do instrukcji jako odniesienie.
Bajt Dowódca