Jak zatrzymać proces mysqld?


12

wynik ps -e | grep mysqld

wprowadź opis zdjęcia tutaj

uruchamianie htopi klikanie użycia pamięci ..

wprowadź opis zdjęcia tutaj

Zajmuje 33% pamięci 4 GB.

Chcę tylko zakończyć proces mysqld. Uruchomienie sudo pkill mysqldkończy proces, ale znowu proces się rozpoczyna. Chcę go całkowicie zakończyć i odzyskać pamięć.


1
Naciśnij klawisz F5 na htopie, aby zobaczyć, który proces rozpoczyna się mysqld
Moose

Odpowiedzi:


12

mysqlKonfiguracja Upstart ma respawnopcję:

$ grep respawn /etc/init/mysql.conf
respawn
respawn limit 2 5
        elif echo $statusnow | grep -q 'respawn/' ; then

Ta respawnopcja informuje Upstart, aby ponownie uruchomił proces, jeśli zakończy się lub zostanie zabity. Limit wynosi 2, więc możesz spróbować zabić procesy dwa razy, co powie Upstart, aby nie uruchamiał ich ponownie, lub użyj:

sudo service mysql stop

mysql stopzatrzymuje to, a jednak wciąż zaczyna się od nowa ... Skomentowałem wiersze odradzania w konfiguracji, ale to nie pomogło.
Jānis Elmeris,

1
@Janis, jeśli service mysql stopsmysql, a następnie uruchamia się ponownie, wtedy zaczyna się coś innego. Poszukaj cronjobs lub skryptów monitorujących lub czegoś takiego.
muru

Dzięki! Zatrzymałem się /etc/init.d/mysql stop, ale okazało się, że service mysql stopzamiast tego musiałem biec . Myślałem, że są one takie same (jedno wywołuje drugie lub oba wywołują to samo polecenie).
Jānis Elmeris,

13
/etc/init.d/mysql stop
service mysql stop
killall -KILL mysql mysqld_safe mysqld

Gdy zobaczysz następujące informacje, odniesiesz sukces

mysql: no process found
mysqld_safe: no process found
mysqld: no process found

Używam tego do rozwiązania problemu instalacyjnego MySQL 5.6 w Ubuntu 15.10 za pomocą tego linku .

Podczas tej instalacji napotyka problem:

mysqld_safe A mysqld process already exists

Wystarczy całkowicie zatrzymać mysqld, mysqld_safe, mysql rozwiązuje problem



1

Jakoś wszystkie odpowiedzi nie mogły mi pomóc, dopóki nie zrestartowałem serwera, a potem go zatrzymałem, więc oto kroki:

sudo /etc/init.d/mysql restart

sudo /etc/init.d/mysql stop

Działa to w Ubuntu WSL.


1
duplikat tej odpowiedzi askubuntu.com/a/771591/790920
abu_bua

@abu_bua Próbowałem kroków, które tam postawił, i nadal nie działało to dla mnie, dopóki nie uruchomiłem ponownie, a potem nie wykonałem operacji, dlatego mam konkretne kroki w tej kolejności, jeśli ktoś ma takie same problemy.
Eddy Ekofo,

1

Jeśli nie możesz znaleźć mysql w /etc/initlub /etc/init.d, sprawdź, czy identyfikator nie został dostarczony z innym pakietem. Jeśli chodzi o mnie, dowiedziałem się, że mój mysqld działa w celu obsługi nextcloud

$> find '/etc' | grep 'mysql'

/etc/systemd/system/multi-user.target.wants/snap.nextcloud.mysql.service
/etc/systemd/system/snap.nextcloud.mysql.service
/etc/apparmor.d/abstractions/mys

0

Jeśli utkniesz w uruchomionym poleceniu w konsoli, możesz wypróbować jedną z następujących czynności.

  • Ctrl + c
  • Ctrl + q
  • F10
  • wpisz „exit” + Enter
  • wyjście

0

System Preferences -> MySql -> Stop MySQL Server

To jedyny, który działał dla mnie, zatrzymanie / zabicie go z wiersza poleceń zawsze pozwalało na jego ponowne uruchomienie.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.