Parar o servidor redis. Nem o encerramento nem os trabalhos de paragem

Quero parar o servidor redis e ele continua. Estou a utilizar redis-2, 6, 7

Verifique se está em execução:

redis-server
Diz"...bind: endereço já em uso " por isso já está em execução.

eu tentei

redis-cli
redis 127.0.0.1:6379> shutdown
Está pendurado e nada acontece. Eu saio e verifico, sim, ainda está a funcionar.

eu tentei

redis-server stop

eu consigo "não consigo abrir o ficheiro de configuração 'stop '"

Eu tentei.
killall redis-server

Ainda assim execucao.

a razão pela qual eu quero pará-lo é que ele está apenas pendurado quando eu tento definir ou obter um valor através de Python. Então pensei em reiniciá-lo.

editar:

nenhum comando parece funcionar a partir do redis-cli. Também tentei a informação e está pendurada.

 25
Author: user984003, 2013-02-26

11 answers

Finalmente consegui.

Obter o PID do processo (isto funcionou na Webfaction):

ps -u my_account -o pid,rss,command | grep redis

Depois

> kill -9 the_pid

Consegui reproduzir este número:

Start redis-server
Then break it using Pause/Break key
Agora desliga-se e não se desliga normalmente. Também o programa Python tentando definir / obter uma chave pendura. Para evitar isto: basta fechar a janela depois de iniciar o servidor redis. Está a correr normalmente.
 28
Author: user984003, 2016-03-30 11:47:18

Desligar O Servidor Redis $ redis-cli -a password -p 6379 shutdown

Iniciar O Servidor Redis $ sudo service redis_6379 start

Funciona no servidor Ubuntu 14.04 x86 Redis v2.8.15.

 15
Author: xuri, 2014-09-15 12:56:29

A forma normal de fazer isto é ligar-se a um cliente como o redis-cli e executar o comando "desligar". Encontrei alguns problemas a tentar desligar porque o servidor redis não tem permissões certas para editar o ficheiro db dump (RDB) antes de sair. Então o redis continua a trabalhar e tens de acabar com o processo com o kill-9 pid. Mas isto não é um problema redis, como deve saber.

Exemplo deste problema:

# User requested shutdown...
[16560] 10 Sep 11:21:17.672 * Saving the final RDB snapshot before exiting.
[16560] 10 Sep 11:21:17.672 # Failed opening .rdb for saving: Permission denied
[16560] 10 Sep 11:21:17.672 # Error trying to save the DB, can't exit.
 5
Author: Emilio, 2013-09-25 08:21:14
Já não consigo reproduzir o problema, mas ajudei-me quando estava a brincar com o redis e não consegui que ele se desligasse.
redis-cli
127.0.0.1:6379> shutdown
(error) ERR Errors trying to SHUTDOWN. Check logs.
127.0.0.1:6379> shutdown NOSAVE
not connected>
 3
Author: LarS, 2017-07-12 23:32:28
Acho que o comando desligar Pode desligar o servidor redis. Talvez estranho, depois de escrever o comando de desligar, o redis-cli não sai.Entretanto,o servidor fechou.
 1
Author: user188826, 2013-11-27 02:37:26
Isto é possivelmente uma nota muito importante para algumas pessoas que lêem isto. Se os teus redis não responderem a uma paragem. VERIFICA OS REGISTOS. Eles podem dizer algo assim:
Apr 24 00:48:54 redis[828]: Received SIGTERM, scheduling shutdown...
Apr 24 00:48:54 redis[828]: User requested shutdown, saving DB...
Apr 24 00:55:37 redis[828]: DB saved on disk

Talvez o seu DB seja múltiplo GB, ou dezenas de GBs, caso em que levará tempo para desligar. Se em vez disso você quiser limpar todas as chaves, há uma maneira melhor de fazer isso do que desligar. FLUSHALL

 1
Author: jQwierdy, 2017-04-24 01:05:43

Paragem líquida redis

Deve fazer o truque

Para começar:

Refazer o arranque líquido

Vê isto https://stackoverflow.com/a/20153062

 0
Author: Arif, 2017-05-23 10:31:22

Ao configurar o servidor para necessitar de auth...

O script redis start and shutdown utiliza redis-cli, o que significa que o desligamento não vai acontecer sem auth e o servidor vai ficar em um loop à espera que redis para desligar, o que nunca vai acontecer sem auth.

Então no script de encerramento você tem que mudar
$CLIEXEC -p $REDISPORT shutdown

A

$CLIEXEC -a 'authpassword' -p $REDISPORT shutdown

De modo a permitir que o seu serviço redis seja desligado sem problemas.

 0
Author: Billy, 2015-01-14 16:27:23

Você usa o seguinte comando para matar o processo do servidor redis em execução.

ps aux |grep redis

Isto irá listar todos os processos em execução para o redis-server. Então você pode usar o seguinte comando para matar os processos redis

sudo kill <pid for redis>

Amostra aqui

sudo kill 7229 //for the above sample.
 0
Author: bpathak, 2016-04-25 08:18:26

Melhor forma de verificar pid do redis porta aberta:

lsof -i:<redis-port>

Para o porto redis por omissão

lsof -i:6379

kill -9 <pid>
 0
Author: Prashant Srivastav, 2016-05-13 06:15:43
start redis: $REDIS_HOME/src/redis-server
stop redis: $REDIS_HOME/src/redis-cli shutdown

$REDIS_HOME onde instalou / extraiu redis.

 0
Author: Deepak Punjabi, 2017-06-15 06:27:41