Come riavvio redis che ho installato con brew?


64

Ho usato brew per installare redis (un server di database archivio chiavi / valori) per la mia app node.js.

brew install redis

Tuttavia, sembra scomparire ed è molto volatile. Poiché sto usando Redis come archivio di sessioni, devo essere in grado di riavviarlo rapidamente sul mio Mac quando ciò accade.

Come riavvio redis che ho installato con brew?

Risposte:


64

aggiornare

i servizi di erogazione sono scaduti a causa della mancanza di manutenzione da parte di nessuno. controllare di seguito: https://github.com/Homebrew/homebrew/issues/28657

controlla launchctlinvece la funzione.

o lunchy

Quindi invece di:

launchctl load ~/Library/LaunchAgents/io.redis.redis-server.plist

Puoi farlo:

lunchy start redis

e:

lunchy ls

riferimenti: https://github.com/eddiezane/lunchy

Era in grado di utilizzare come di seguito:

brew services restart redis

dovrebbe essere il comando riavvio desiderato. Puoi anche correre

brew services list

che ti fornirà un elenco dei tuoi servizi di produzione della birra.


2
Ho dovuto reinstallare redis con brew per ottenerlo nel piano di avvio, quindi ha funzionato bene
Stuart Nelson,

1
"Attenzione: i servizi di preparazione della birra non sono supportati e verranno rimossi presto."
user72923

2
È abbastanza stupido rimuovere questa scorciatoia così utile. Ma è pieno di errori. Posso smettere di redis con brew services, ma dopo non riesco a riavviarlo.
Phuong Nguyen,

3
brew non supporta più il verbo "servizi" a partire dalla 0.9.5
oDDsKooL

4
Si prega di notare che la birra fa supportare il comando dei servizi attualmente tramite un rubinetto. Vedi la risposta qui sotto, è una risposta più pertinente ora.
GrayedFox,

37

A partire dal 7-dic-2015, è possibile utilizzare brew services.

È necessario brew tap homebrew/servicese quindi il seguente funzionerà come previsto:

installare brew install redis

inizio brew services start redis

fermare brew services stop redis

ricomincia brew services restart redis

Maggiori informazioni qui: https://github.com/Homebrew/homebrew-services


la risposta in conflitto sopra dice che brew servicesè deprecata.
Chovy

5
@chovy Sono stati deprecati a causa della mancanza di manutenzione, ma ora sono tornati di nuovo come rubinetteria . Come puoi vedere, l'ultimo commit è di 27 giorni fa .
microspino,

3
Questa è una risposta più pertinente e aggiornata ora rispetto a quelle sopra, e più veloce da implementare rispetto al launchctlmodo manuale .
GrayedFox,

2
È il 2017 e sto usando Brew v1.3.6 e funziona perfettamente.
Ryan Taylor,

23

Brew non supporta più il servicescomando.

Il modo consigliato è usare il launchctlcomando os x .

Per prima cosa devi impostare redis come servizio gestito da launchctl:

$ ln -sfv /usr/local/opt/redis/*.plist ~/Library/LaunchAgents

Quindi è possibile utilizzare launchctl load/ launchctl unloadper avviare / interrompere il servizio:

$ # start redis server
$ launchctl load ~/Library/LaunchAgents/homebrew.mxcl.redis.plist
$
$ # stop redis server
$ launchctl unload ~/Library/LaunchAgents/homebrew.mxcl.redis.plist

brew 0.9.5 servizi di supporto, eccoli $ brew --version Homebrew 0.9.5 (revisione git bf22; ultimo commit 2016-03-06) $ brew elenco servizi Nome Stato Plist utente postgresql fermato redis fermato $
AMIC MING

19

Ho trovato tutte queste opzioni elencate nel pacchetto brew ( brew info redis) per essere molto buggy. Ad esempio, redis genera un sacco di errori se non viene avviato con root. Ho finito per fare la chiamata diretta con sudo e rimuovere i file launchctl.

sudo redis-server /usr/local/etc/redis.conf

Speravo ci fosse un modo per riavviare facilmente redis dalla riga di comando, ma ciò non sembra possibile. Pertanto, corro con la modalità demone impostata su 'no' e guardo il registro su stdout, quindi posso ucciderlo facilmente.


1
Ho aggiunto questo comando con "& disown" allo sfondo e al distacco dal processo
Ben Simpson,

2
Vedi l'altra risposta che utilizza launchctl, funziona e ora è supportata dalla ricetta della birra.
oDDsKooL,

1

Per Homebrew 1.5.14

redis-server


4
Benvenuto in Super User! Questo duplica le informazioni presenti in un'altra risposta : puoi differenziarle? :)
bertieb,

Ora è uguale alla risposta accettata !! (Dovresti proprio cancellare questa risposta.)
robinCTS

no non lo è. Ha incluso il percorso di un file conf. Chiaramente non è lo stesso e non è richiesto. So che non voglio digitare il percorso di un file conf ogni volta che avvio e interrompo Redis e penso che chiunque legga questo (oltre a te) lo troverebbe prezioso.
Miguel Coder,
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.