Come fermare mysqld


181

Per scoprire il comando start per mysqld (usando un mac) posso fare:

ps aux|grep mysql

Ottengo il seguente output, che mi consente di avviare il server mysql.

/usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=...

Come troverei il comando necessario per interrompere mysql dalla riga di comando?



Questo lavoro per me: askubuntu.com/questions/529302/how-to-stop-mysqld-process Forse funzionerà anche per te, fratello. [] 's
— lam3,

1
La domanda era per un Mac.
— Snowcrash,

Se sei connesso tramite il mysqlclient, puoi semplicemente digitare SHUTDOWNal prompt .
— CHB

Risposte:


309

Provare:

/usr/local/mysql/bin/mysqladmin -u root -p shutdown 

O:

sudo mysqld stop

O:

sudo /usr/local/mysql/bin/mysqld stop

O:

sudo mysql.server stop

Se installi Launchctl in OSX puoi provare:

MacPorts

sudo launchctl unload -w /Library/LaunchDaemons/org.macports.mysql.plist
sudo launchctl load -w /Library/LaunchDaemons/org.macports.mysql.plist

Nota: questo è persistente dopo il riavvio.

homebrew

launchctl unload -w ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist

Programma di installazione binario

sudo /Library/StartupItems/MySQLCOM/MySQLCOM stop
sudo /Library/StartupItems/MySQLCOM/MySQLCOM start
sudo /Library/StartupItems/MySQLCOM/MySQLCOM restart

L'ho trovato in: https://stackoverflow.com/a/102094/58768


9
Grazie, ha /usr/local/mysql/bin/mysqladmin -u root shutdownfatto il trucco.
— David542,

5
Se si tratta di un ambiente di sviluppo e non è stata definita una password, funzionerebbe:/usr/local/mysql/bin/mysqladmin -u root shutdown
— laurent

2
l'opzione intermedia ha funzionato, ma solo con l'aggiunta di "service": service mysqld stop
— plaidcorp

11
Oh mio Dio, perché li uso tutti sopra e funziona ancora? È come un virus!
— Zen,

4
Cosa succede se sto eseguendo mysql come $ mysqld? (proprio nel terminal). Come lo ucciderei allora? Perché CTRL-C non funziona .. So che killlo ucciderebbe, ma mi chiedo solo se c'è una sequenza di escape che mysqld ascolta.
— Matej,

33

C'è un modo alternativo di uccidere semplicemente il processo demone chiamando

kill -TERM PID

dove si PIDtrova il valore memorizzato nel file mysqld.pido l'id del processo mysqld che può essere ottenuto emettendo il comando ps -a | grep mysqld.


4
è bello sapere che in realtà uccide il processo dopo che ha continuato a rigenerarsi quando "kill -9 PID" non lo ha fatto.
— LordB8r,

2
@ lordB8r cosa significa b / c? Ho provato a uccidere -9 mysqld (pid) ma si riavvia subito dopo, questo mi sta torturando.
— Zen,

@Zen Usa kill -TERM mysqld(pid)invece e l'intero albero del processo verrà ucciso, non consentendogli di essere rigenerato.
— Pirooz,

1
Sì, l'operazione è sicura poiché gli RDB garantiscono proprietà ACID.
— Pirooz,

2
Ho provato il PID kill -term e lo ha ucciso ma se eseguo ps -a | grep mysqld, il processo mysqld viene riavviato con un nuovo PID.
— 2myCharlie

19

Ho trovato la risposta qui.

Uso

sudo stop mysql

Questo ha funzionato per la mia installazione di MySQL Ubuntu AWS. Il "kill -TERM pid" non ha funzionato per il mio caso. Grazie.
— yoshi,

sudo mysql stopper me (Digital Ocean - ghost-512mb-lon1-01).
— Leone,

Ho ricevuto questo errore per questo: ERRORE 1045 (28000): Accesso negato per l'utente 'root' @ 'localhost' (usando la password: NO)
— 2myCharlie

19

Per Windows, puoi eseguire questo comando direttamente se mysql / bin è nel tuo percorso.

mysqladmin -u root -p shutdown


10

per il programma di installazione binario usare questo:

fermare:

sudo /Library/StartupItems/MySQLCOM/MySQLCOM stop

iniziare:

sudo /Library/StartupItems/MySQLCOM/MySQLCOM start

ricominciare:

sudo /Library/StartupItems/MySQLCOM/MySQLCOM restart

10

Su OSX 10.8 e versioni successive, il controllo per MySQL è disponibile nelle configurazioni di sistema. Apri Preferenze di Sistema, fai clic su Mysql (di solito in fondo) e avvia / arresta il servizio da quel riquadro. https://dev.mysql.com/doc/refman/5.6/en/osx-installation-launchd.html

Il file plist è ora in /Library/LaunchDaemons/com.oracle.oss.mysql.mysqld.plist


4
Per la cronaca, ho provato tutti i metodi di cui sopra e nessuno di loro ha funzionato per fermare il processo MySQL extra. Analizzare le Preferenze di Sistema e cercare MySQL ha funzionato, grazie!
— Andycrone,

Grazie, ha funzionato. Qui troverai anche il pulsante di disinstallazione.
— smcg

Questo ha funzionato per la maggior parte: gist.github.com/vitorbritto/0555879fe4414d18569d ma per sicurezza, prova il passaggio 7 prima del passaggio 6
— ppostma1,

9

Ha funzionato per me su Mac

a) Interrompere il processo

sudo launchctl list | grep -i mysql

Se il risultato mostra qualcosa di simile: "xxx.xxx.mysqlxxx"

sudo launchctl remove xxx.xxx.mysqlxxx

Esempio: sudo launchctl remove org.macports.mysql56-server

b) Disabilitare per avviare automaticamente il processo

sudo launchctl unload -wF /Library/LaunchDaemons/xxx.xxx.mysqlxxx.plist

Esempio: sudo launchctl unload -wF /Library/LaunchDaemons/org.macports.mysql56-server.plist

  • Finalmente riavvia il tuo mac

Nota: in alcuni casi se si è provato prima "a)" , è necessario riavviare nuovamente prima di provare b) .


6

Uccidere è decisamente la strada sbagliata! Il PID rimarrà, le repliche verranno uccise ecc. Ecc.

STOP al server MySQL

/ sbin / service mysql stop

AVVIA MySQL Server

/ sbin / service mysql start

RIAVVIA il server MySQL

/ sbin / service mysql restart

Forse sudo sarà necessario se non hai abbastanza diritti


5

Prova a uccidere mysqld quattro volte di seguito. È l'unica cosa che ha funzionato per me ...

root@ubuntu:/etc/init# killall -KILL mysqld 
root@ubuntu:/etc/init# killall -KILL mysqld 
root@ubuntu:/etc/init# killall -KILL mysqld 
root@ubuntu:/etc/init# killall -KILL mysqld 
mysqld: no process found

Continua a ucciderlo ancora e ancora finché non vedi "mysqld: nessun processo trovato".


Grazie ha funzionato per il mio caso
— Joyce obi, il

4

Quello che ha funzionato per me su CentOS 6.4 era in esecuzione service mysqld stopcome utente root.

Ho trovato la mia risposta su nixCraft .


2
/etc/init.d/mysql stop<br>
service mysql stop<br>
killall -KILL mysql mysqld_safe mysqld<br>

When you see the following information, you success

mysql: no process found<br>
mysqld_safe: no process found<br>
mysqld: no process found

Lo uso per risolvere il problema di installazione di MySQL 5.6 in Ubuntu 15.10 usando questo link .

Durante questa installazione, ho riscontrato il problema dicendo:

"mysqld_safe A mysqld process already exists"

Basta fermare completamente mysqld, mysqld_safe, mysql risolve il problema.


2

Se il mio mysql continua a riavviare ha
sudo rm -rf /usr/local/var/mysql/dev.work.err
mysql.server stop
funzionato per me.


mysql.server stop ha richiesto questo errore: zsh: comando non trovato: mysql.server
— 2myCharlie

1

Per interrompere l'avvio automatico di mysql all'avvio, il seguente ha funzionato per me con mysql 8.0.12installato usando Homebrew in macOS Mojave 10.14.1:

rm -rf ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist

1

Per interrompere l'istanza del server MariaDB e MySQL:

sudo mysqladmin shutdown

Per avviare l'istanza del server MariaDB e MySQL:

mysqld &

Per modificare la proprietà dei dati per l'istanza del server MariaDB e MySQL:

sudo chown -R 755 /usr/local/mariadb/data

0

Per mysql 5.7 scaricato da file binario su MacOS:

sudo launchctl load -F /Library/LaunchDaemons/com.oracle.oss.mysql.mysqld.plist
sudo launchctl unload -F /Library/LaunchDaemons/com.oracle.oss.mysql.mysqld.plist

-1

Per MAMP

  1. Arresta i server (ma potresti notare che MySQL rimane acceso)
  2. Rimuovere o rinominare /Applications/MAMP/tmp/mysql/che contiene i file mysql.pidemysql.sock.lock
  3. Quando torni a Mamp, vedrai che MySQL è ora spento. È possibile "Avviare nuovamente i server".

questo darà '/ Applicazioni / MAMP / tmp / mysql' per il file socket UNIX non esiste 'nel file mysql_error_log
— Abdullah Tahan
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.