mysqld_multi stop parece não funcionar

5

mysqld_multi stop 1 seguido por (repetidamente, alguns momentos depois)

mysqld_multi report 1 retorna:

Reporting MySQL servers

MySQL server from group: mysqld1 is running

As instâncias funcionam bem e quando eu reinicio, tenho que iniciar as instâncias para que elas voltem a funcionar (um problema separado que preciso resolver), mas o comando stop parece não fazer nada. / p>

Ele realmente não para a instância porque no arquivo de log da instância eu vejo isto: 120619 11:12:39 mysqld_safe A mysqld process already exists depois de tentar executar start depois.

    
por gravyface 19.06.2012 / 17:11

5 respostas

7

Sempre que isso acontece, eu costumo tentar desligar o mysql usando mysqladmin

Por exemplo, para desligar o mysql em execução na porta 3307

mysqladmin -h127.0.0.1 -P3307 -uroot -p shutdown

Uma vez que você correu, certifique-se de que o mysql nessa porta está realmente desativado assim:

mysqladmin -h127.0.0.1 -P3307 -uroot -p ping

Experimente!

    
por 19.06.2012 / 18:00
2

Para impedir que qualquer instância de mysqld_multi privileges seja concedida a multi_admin user. Por favor, verifique as doações também.

    
por 15.05.2014 / 11:40
1

Este problema ainda está presente no MYSQL 5.7.7 Parece engraçado, mas o trabalho é usar o passe em vez da senha em my.cnf para o usuário do grupo [multi_admin].

[mysqld_multi]
mysqld     = /usr/bin/mysqld_safe
mysqladmin = /usr/bin/mysqladmin
user       = multi_admin
pass       = pass123
    
por 19.07.2017 / 15:13
0

depois de desligar o serviço mysql (usando mysqladmin -h127.0.0.1 -uroot -p shutdown ) e iniciá-lo novamente, eu não consegui me conectar a esse servidor de clientes externos

Eu procurei o problema e encontrei esta pergunta , aplicou a resposta, para que o problema fosse resolvido. isso foi por causa da consulta reversa do DNS do mysqld.

    
por 17.08.2014 / 14:29
0

mysqld_multi é apenas um script perl. Por que mysqld_multi start 1 e mysqld_multi report 1 funcionando, mas mysqld_multi stop 1 não, está em my_print_defaults.

my_print_defaults mysqld_multi -s

--mysqld=/usr/bin/mysqld_safe
--mysqladmin=/usr/bin/mysqladmin
--user=multi_admin
--password=yy

my_print_defaults mysqld_multi
--mysqld=/usr/bin/mysqld_safe
--mysqladmin=/usr/bin/mysqladmin
--user=multi_admin
--password=*****

No MySQL5.6 + , a senha será mostrada em "" por padrão, mysqld_multi start, o relatório não precisa de autorização, então a senha é inútil, e funciona, mas ao parar, usuário & senha é necessária para autorização, e "" divide mysqld_multi stop .

Soluções:

  1. modifique mysqld_multi, adicione a opção -s a my_print_defaults
  2. mysqld_multi stop 4 --password = minha_password

A solução do @RolandoMySQLDBA funciona, só porque o mysqld_multi irá finalmente confiar no mysqladmin para o admin mysqld instance

    
por 04.08.2015 / 03:57

Tags