Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I used brew to install redis (a key/value store database server) for my node.js app.

brew install redis

However, it seems to disappear and is very volatile. Because I'm using redis as my session store, I need to be able to quickly restart it on my mac when this happens.

How do I restart redis that I installed with brew?

share|improve this question


brew services expired due to no one want to maintain it. check below:

check launchctl function instead.

or lunchy

So instead of:

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

you can do this:

lunchy start redis


lunchy ls


It used to be able to use as below:

brew services restart redis

should be the restart command You want. You can also run

brew services list

which will give you list of your brew services.

share|improve this answer
I had to re-install redis with brew to get it in the startup plist, then this worked fine – Stuart Nelson Jun 26 '14 at 15:27
"Warning: brew services is unsupported and will be removed soon." – user72923 Sep 13 '14 at 17:25
It's pretty dumb to remove such useful shortcut. But it's buggy by the way. I can stop redis with brew services, but after that I'm unable to start it again. – Phuong Nguyen Oct 4 '14 at 5:50
brew doesn't support the "services" verb anymore as of 0.9.5 – oDDsKooL Oct 23 '14 at 6:38
Use the answer below using launchctl, now that brew doesn't support "services" anymore – Daniel Magliola Feb 19 '15 at 14:43

Brew doesn't support the services command anymore.

The recommended way is to use os x's launchctl command.

First you need to setup redis as a service managed by launchctl:

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

Then you can use launchctl load/ launchctl unload to start/stop the service:

$ # start redis server
$ launchctl load ~/Library/LaunchAgents/homebrew.mxcl.redis.plist
$ # stop redis server
$ launchctl unload ~/Library/LaunchAgents/homebrew.mxcl.redis.plist
share|improve this answer
brew 0.9.5 support services, here they are $ brew --version Homebrew 0.9.5 (git revision bf22; last commit 2016-03-06) $ brew services list Name Status User Plist postgresql stopped redis stopped $ – Amit Mar 22 at 19:14
up vote 14 down vote accepted

I found all these options listed in brew package (brew info redis) to be very buggy. For example redis throws a bunch of errors if it isn't started with root. I ended up just doing the direct call with sudo and removing launchctl files.

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

I was hoping there was a way to easily restart redis from the command line, but that doesn't seem possible. Therefore, I run with daemon mode set to 'no' and watch it log to stdout, then I can kill it easily.

share|improve this answer
I've appended this command with '& disown' to background and detach from the process – Ben Simpson Jan 2 '14 at 19:36
See the other answer that uses launchctl, it works and is supported now by the brew recipe. – oDDsKooL Oct 23 '14 at 6:46

As of Dec-7-2015 You can use brew services.

You need to brew tap homebrew/services and then thw following will work as expected:

install brew install redis

start brew services start redis

stop brew services stop redis

restart brew services restart redis

More info here:

share|improve this answer
conflicting answer above says brew services is deprecated. – chovy Dec 8 '15 at 10:20
@chovy They were deprecated because of lack of maintenance, but are now back again as a brew tap. As you can see last commit is from 27 days ago. – microspino Dec 8 '15 at 11:28

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.