Como parar o mysqld


181

Para descobrir o comando start do mysqld (usando um mac), eu posso fazer:

ps aux|grep mysql

Eu recebo a seguinte saída, o que me permite iniciar o servidor mysql.

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

Como eu encontraria o comando necessário para parar o mysql na linha de comando?



Este trabalho para mim: askubuntu.com/questions/529302/how-to-stop-mysqld-process Talvez funcione para você também, mano. [] 's
lam3 12/06/2015

1
A questão era para um Mac.
Snowcrash

Se você estiver conectado via mysqlcliente, basta digitar SHUTDOWNno prompt .
CHB

Respostas:


309

Experimentar:

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

Ou:

sudo mysqld stop

Ou:

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

Ou:

sudo mysql.server stop

Se você instalar o Launchctl no OSX, poderá tentar:

MacPorts

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

Nota: isso é persistente após a reinicialização.

Homebrew

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

Instalador binário

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

Descobri isso em: https://stackoverflow.com/a/102094/58768


9
Obrigado, /usr/local/mysql/bin/mysqladmin -u root shutdownfez o truque.
David542

5
Se é um ambiente de dev e nenhuma senha é definida, isso iria funcionar:/usr/local/mysql/bin/mysqladmin -u root shutdown
laurent

2
a opção de meia trabalhou, mas apenas com a adição de "serviço": serviço de mysqld parada
plaidcorp

11
Oh meu Deus, por que eu uso tudo isso acima e ainda está funcionando? É como um vírus!
Zen

4
E se eu estiver executando o mysql como $ mysqld? (apenas no terminal). Como eu o mataria então? Porque CTRL-C não funciona .. Eu sei que killiria matá-lo, mas me pergunto se há uma sequência de escape que o mysqld escuta.
Matej

33

Existe uma maneira alternativa de simplesmente matar o processo daemon chamando

kill -TERM PID

onde PIDé o valor armazenado no arquivo mysqld.pidou o ID do processo mysqld que pode ser obtido emitindo o comando ps -a | grep mysqld.


4
É bom saber que, na verdade, ele mata o processo depois de continuar sendo reaparecido quando "kill -9 PID" simplesmente não o fazia.
LrBBrr 11/09/2013

2
@ lordB8r o que significa b / c? Tentei matar -9 mysqld (pid), mas ele foi reiniciado imediatamente após isso, isso está me torturando.
Zen

@Zen Use em kill -TERM mysqld(pid)vez disso e toda a árvore do processo será eliminada , não permitindo que seja reaparecida.
Pirooz 01/09/14

1
Sim, a operação é segura, pois os RDBs garantem propriedades ACID.
Pirooz

2
Eu tentei o PID kill -term e ele matou, mas se eu executar ps -a | grep mysqld, o processo mysqld é iniciado novamente com um novo PID.
2myCharlie

19

Eu encontrei a resposta aqui.

Usar

sudo stop mysql

Isso funcionou para minha instalação do AWS ubuntu mysql. O 'kill -TERM pid' não funcionou no meu caso. Obrigado.
yoshi

sudo mysql stoppara mim (Digital Ocean - ghost-512mb-lon1-01).
12122 Leo

Eu recebi este erro para isso: ERRO 1045 (28000): Acesso negado para o usuário 'root' @ 'localhost' (usando a senha: NO)
2myCharlie

19

No Windows, você pode executar este comando diretamente se o mysql / bin estiver no seu caminho.

mysqladmin -u root -p shutdown


10

para instalador binário, use este:

parar:

sudo /Library/StartupItems/MySQLCOM/MySQLCOM stop

para iniciar:

sudo /Library/StartupItems/MySQLCOM/MySQLCOM start

reiniciar:

sudo /Library/StartupItems/MySQLCOM/MySQLCOM restart

10

No OSX 10.8 e posterior, o controle para MySQL está disponível nas Configurações do sistema. Abra Preferências do Sistema, clique em Mysql (geralmente na parte inferior) e inicie / pare o serviço nesse painel. https://dev.mysql.com/doc/refman/5.6/en/osx-installation-launchd.html

O arquivo plist agora está em /Library/LaunchDaemons/com.oracle.oss.mysql.mysqld.plist


4
Para o registro, tentei todos os métodos acima e nenhum deles funcionou para interromper o processo extra do MySQL. Percorrer as Preferências do Sistema e pesquisar o MySQL fez o truque - obrigado!
andycrone

Obrigado, isso funcionou. Também é aqui que você encontra o botão de desinstalação.
smcg

Isso funcionou para a maioria: gist.github.com/vitorbritto/0555879fe4414d18569d mas para ser seguro, tente a etapa 7 antes Passo 6
ppostma1

9

Trabalhou para mim no mac

a) Pare o processo

sudo launchctl list | grep -i mysql

Se o resultado mostrar algo como: "xxx.xxx.mysqlxxx"

sudo launchctl remove xxx.xxx.mysqlxxx

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

b) Desativar para iniciar automaticamente o processo

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

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

  • Finalmente reinicie o seu mac

Nota: Em alguns casos, se você tentou "a)" primeiro, precisa reiniciar novamente antes de tentar b) .


6

Matar é definitivamente o caminho errado! O PID permanecerá, os Replicationsjobs serão mortos etc. etc.

PARAR o servidor MySQL

/ sbin / service mysql stop

INICIAR Servidor MySQL

/ sbin / service mysql start

REINICIAR Servidor MySQL

/ sbin / service mysql restart

Talvez sudo seja necessário se você não tiver direitos suficientes


5

Tente matar o mysqld quatro vezes seguidas. É a única coisa que funcionou para mim ...

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

Continue matando várias vezes até ver "mysqld: nenhum processo encontrado".


Obrigado trabalhou para o meu caso
Joyce obi

4

O que funcionou para mim no CentOS 6.4 foi executado service mysqld stop como usuário root.

Encontrei minha resposta no 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

Eu uso isso para resolver o problema de instalação do MySQL 5.6 no Ubuntu 15.10 usando este link .

Durante esta instalação, encontro o problema dizendo:

"mysqld_safe A mysqld process already exists"

Pare completamente o mysqld, mysqld_safe, o mysql resolve o problema.


2

Se meu mysql continuar reiniciando
sudo rm -rf /usr/local/var/mysql/dev.work.err
mysql.server stop
funcionou para mim.


A parada do mysql.server solicitou este erro: zsh: comando não encontrado: mysql.server
2myCharlie

1

Para parar a inicialização automática do mysql na inicialização, o seguinte funcionou para mim com o mysql 8.0.12instalado usando o Homebrew in macOS Mojave 10.14.1:

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

1

Para parar a instância do servidor MariaDB e MySQL:

sudo mysqladmin shutdown

Para iniciar a instância do servidor MariaDB e MySQL:

mysqld &

Para alterar a propriedade dos dados para a instância do servidor MariaDB e MySQL:

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

0

Para o mysql 5.7 baixado do arquivo binário no 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. Pare servidores (mas você pode notar que o MySQL permanece ligado)
  2. Remova ou renomeie /Applications/MAMP/tmp/mysql/os arquivos mysql.pidemysql.sock.lock
  3. Quando você voltar ao Mamp, verá que o MySQL está desativado. Você pode "Iniciar Servidores" novamente.

isso vai dar '/ Applications / MAMP / tmp / mysql' para arquivo de socket UNIX não existe no arquivo mysql_error_log
Abdullah Tahan
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.