Cómo detener mysqld


181

Para encontrar el comando de inicio para mysqld (usando una mac) puedo hacer:

ps aux|grep mysql

Obtengo el siguiente resultado, que me permite iniciar el servidor mysql.

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

¿Cómo encontraría el comando necesario para detener mysql desde la línea de comando?



Esto funciona para mí: askubuntu.com/questions/529302/how-to-stop-mysqld-process Quizás también funcione para usted hermano. [] 's
lam3

1
La pregunta era para una Mac.
Snowcrash

Si está conectado a través del mysqlcliente, puede escribir SHUTDOWNen el indicador .
chb

Respuestas:


309

Tratar:

/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

Si instala Launchctl en OSX , puede probar:

MacPorts

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

Nota: esto es persistente después del reinicio.

Cerveza casera

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

Instalador binario

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

Encontré eso en: https://stackoverflow.com/a/102094/58768


9
Gracias, /usr/local/mysql/bin/mysqladmin -u root shutdownhizo el truco.
David542

55
Si se trata de un entorno de desarrollo y no se define una contraseña, esto funcionaría:/usr/local/mysql/bin/mysqladmin -u root shutdown
Laurent

2
la opción del medio funcionó, pero solo con la adición de "service": service mysqld stop
plaidcorp

11
Dios mío, ¿por qué uso todos estos anteriores y todavía se está ejecutando? ¡Es como un virus!
Zen

44
¿Qué pasa si estoy ejecutando mysql como $ mysqld? (solo en la terminal). ¿Cómo lo mataría entonces? Porque CTRL-C no funciona ... Sé que killlo mataría, pero me pregunto si hay una secuencia de escape que mysqld escucha.
Matej

33

Hay una forma alternativa de simplemente matar el proceso del demonio llamando

kill -TERM PID

donde PIDes el valor almacenado en el archivo mysqld.pido el id del proceso mysqld que se puede obtener emitiendo el comando ps -a | grep mysqld.


44
es bueno saberlo porque realmente mata el proceso después de que se reapareció cuando "kill -9 PID" simplemente no lo hizo.
lordB8r

2
@ lordB8r, ¿qué significa b / c? Intenté matar -9 mysqld (pid) pero se reinicia inmediatamente después de eso, esto me está torturando.
Zen

@Zen Use en su kill -TERM mysqld(pid)lugar y se eliminará todo el árbol de procesos, lo que no permitirá que se reaparezca.
Pirooz

1
Sí, la operación es segura ya que los RDB garantizan las propiedades ACID.
Pirooz

2
Probé el PID kill -term y lo mató, pero si ejecuto ps -a | grep mysqld, el proceso mysqld se inicia nuevamente con un nuevo PID.
2myCharlie

19

Encontré la respuesta aquí.

Utilizar

sudo stop mysql

Esto funcionó para mi instalación de AWS ubuntu mysql. El 'kill -TERM pid' no funcionó para mi caso. Gracias.
yoshi

sudo mysql stoppara mí (Digital Ocean - ghost-512mb-lon1-01).
Leo

Recibí este error para eso: ERROR 1045 (28000): acceso denegado para el usuario 'root' @ 'localhost' (usando la contraseña: NO)
2myCharlie

19

Para Windows, puede ejecutar este comando directamente si mysql / bin está en su ruta.

mysqladmin -u root -p shutdown


10

para el instalador binario use esto:

para detener:

sudo /Library/StartupItems/MySQLCOM/MySQLCOM stop

para comenzar:

sudo /Library/StartupItems/MySQLCOM/MySQLCOM start

Para reiniciar:

sudo /Library/StartupItems/MySQLCOM/MySQLCOM restart

10

En OSX 10.8 y posteriores, el control para MySQL está disponible desde las configuraciones del sistema. Abra Preferencias del sistema, haga clic en Mysql (generalmente en la parte inferior) e inicie / detenga el servicio desde ese panel. https://dev.mysql.com/doc/refman/5.6/en/osx-installation-launchd.html

El archivo plist ahora está en /Library/LaunchDaemons/com.oracle.oss.mysql.mysqld.plist


44
Para el registro, probé todos los métodos anteriores y ninguno de ellos funcionó para detener el proceso adicional de MySQL. Ir a través de Preferencias del sistema y buscar MySQL hizo el truco, ¡gracias!
andycrone

Gracias, esto funcionó. Aquí también se encuentra el botón de desinstalación.
smcg

Esto funcionó para la mayoría: gist.github.com/vitorbritto/0555879fe4414d18569d pero para estar seguro, intente el Paso 7 antes del Paso 6
ppostma1

9

Trabajó para mí en Mac

a) Detener el proceso

sudo launchctl list | grep -i mysql

Si el resultado muestra algo como: "xxx.xxx.mysqlxxx"

sudo launchctl remove xxx.xxx.mysqlxxx

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

b) Desactivar para iniciar automáticamente el proceso

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

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

  • Finalmente reinicia tu mac

Nota: En algunos casos, si intentó "a)" primero, debe reiniciar nuevamente antes de intentar b) .


6

¡Matar es definitivamente el camino equivocado! El PID se mantendrá, los trabajos de replicación se eliminarán, etc., etc.

DETENER el servidor MySQL

/ sbin / service mysql stop

INICIAR Servidor MySQL

/ sbin / service mysql start

REINICIAR Servidor MySQL

/ sbin / service mysql restart

Quizás sea necesario sudo si no tienes suficientes derechos


5

Intenta matar a mysqld cuatro veces seguidas. Es lo único que funcionó para mí ...

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

Solo sigue matándolo una y otra vez hasta que veas "mysqld: no se encontró ningún proceso".


Gracias funcionó para mi caso
Joyce obi

4

Lo que funcionó para mí en CentOS 6.4 se ejecutaba service mysqld stopcomo usuario root.

Encontré mi respuesta en 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 para resolver el problema de instalación de MySQL 5.6 en Ubuntu 15.10 usando este enlace .

Durante esta instalación, me encuentro con el problema que dice:

"mysqld_safe A mysqld process already exists"

Simplemente detenga completamente mysqld, mysqld_safe, mysql resuelve el problema.


2

Si mi mysql sigue reiniciando
sudo rm -rf /usr/local/var/mysql/dev.work.err
mysql.server stop
funcionó para mí.


mysql.server stop provocó este error: zsh: comando no encontrado: mysql.server
2myCharlie

1

Para detener el inicio automático de mysql en el arranque, lo siguiente funcionó para mí con mysql 8.0.12instalado usando Homebrew en macOS Mojave 10.14.1:

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

1

Para detener la instancia del servidor MariaDB y MySQL:

sudo mysqladmin shutdown

Para iniciar la instancia del servidor MariaDB y MySQL:

mysqld &

Para cambiar la propiedad de los datos para la instancia del servidor MariaDB y MySQL:

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

0

Para mysql 5.7 descargado desde un archivo binario en 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

Para MAMP

  1. Detener servidores (pero puede notar que MySQL permanece encendido)
  2. Eliminar o cambiar /Applications/MAMP/tmp/mysql/el nombre de los archivos mysql.pidymysql.sock.lock
  3. Cuando regrese a Mamp, verá que MySQL ahora está desactivado. Puede "Iniciar servidores" nuevamente.

esto le dará '/ Aplicaciones / MAMP / tmp / mysql' para que el archivo de socket UNIX no exista 'en el archivo mysql_error_log
Abdullah Tahan
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.