78

我使用brew为我的node.js应用程序安装了redis(密钥/值存储数据库服务器)。

brew安装redis

然而,它似乎消失了,而且非常不稳定。因为我使用redis作为会话存储,所以当这种情况发生时,我需要能够在mac上快速重新启动它。

如何重新启动用brew安装的redis?

7个答案7

重置为默认值
74

更新

brew服务因无人维护而过期。请检查以下内容:https://github.com/Homebrew/Homebrew/issues/28657

检查启动ctl而不是函数。

午餐

因此,不是:

launchctl加载~/Library/LaunchAgents/io.redis.redis-server.plist

您可以这样做:

午餐开始redis

和:

午餐ls

参考文献:https://github.com/eddiezane/lunchy

它过去可以按如下方式使用:

brew服务重新启动redis

应该是您想要的重新启动命令。你也可以跑步

brew服务列表

这将为您提供酿造服务列表。

6
  • 2
    我必须用brew重新安装redis,才能在创业公司plist中获得它,然后这个工作很好 评论 2014年6月26日15:27
  • 1
    “警告:brew服务不受支持,将很快删除。” 评论 2014年9月13日17:25
  • 2
    删除这样有用的快捷方式是很愚蠢的。但顺便说一句,这是辆马车。我可以用brew服务,但之后我无法再次启动。 评论 2014年10月4日5:50
  • 自0.9.5起,brew不再支持“服务”动词 评论 2014年10月23日6:38
  • 4
    请注意那杯啤酒现在通过点击支持services命令。请看下面的答案,这是一个更相关的答案。
    – 灰狐
    评论 2016年11月3日15:50
49

截至2015年12月7日,您可以使用酿造服务.

你需要brew tap自制/服务然后,以下内容将按预期工作:

安装 brew安装redis

开始 brew服务启动redis

停止 brew服务停止redis

重新启动 brew服务重启redis

更多信息请点击此处:https://github.com/Homebrew/Homebrew-services网站

4
  • 上面矛盾的回答说brew服务已弃用。
    – 香菜
    评论 2015年12月8日10:20
  • 5
    @他们因缺乏维护而被弃用,但现在又作为酿酒龙头。如您所见,上次提交来自27天前.
    – 小孢子
    评论 2015年12月8日11:28
  • 与上述答案相比,这是一个更具相关性和最新的答案,实施起来比手动操作更快启动ctl方式。
    – 灰狐
    评论 2016年11月3日15:51
  • 2
    现在是2017年,我使用的是Brew v1.3.6,这非常好。
    – 泰勒
    评论 2017年10月27日21:42
23

Brew不支持服务命令。

推荐的方法是使用os x启动ctl命令。

首先,您需要将redis设置为由launchctl管理的服务:

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

然后你可以使用启动ctl负载/launchctl卸载启动/停止服务:

$#启动redis服务器$launchctl加载~/Library/LaunchAgents/homebrew.mxcl.redis.plist$$#停止redis服务器$launchctl卸载~/Library/LaunchAgents/homebrew.mxcl.redis.plist
1
  • brew 0.9.5支持服务,这里是$brew--版本Homebrew 09.5(git修订版bf22;上次提交时间2016-03-06)$brew-服务列表名称状态用户Plist postgresql stopped redis stopped$
    – AMIC明
    评论 2016年3月22日19:14
19

我发现所有这些选项都列在brew包中(酿造信息redis)变得很笨拙。例如,如果redis不是以root开头的,则会抛出一系列错误。最后,我用sudo直接调用并删除了launchctl文件。

sudo redis服务器/usr/local/etc/redis.conf

我希望有一种方法可以从命令行轻松重启redis,但这似乎不可能。因此,我运行时将守护程序模式设置为“no”,并观察它记录到stdout,然后就可以轻松地杀死它。

2
  • 1
    我在后台附加了这个命令,并将其与进程分离 评论 2014年1月2日19:36
  • 2
    查看使用的另一个答案启动ctl,它有效,现在由brew食谱支持。 评论 2014年10月23日6:46
1

对于自制1.5.14

redis服务器

  • 4
    欢迎使用超级用户!这会复制中存在的信息另一个答案-你能区分它吗
    – 伯蒂埃
    评论 2018年5月1日17:44
  • 现在它与公认的答案!! (你真的应该删除这个答案。) 评论 2018年7月27日3:58
  • 不,不是。他包含了conf文件的路径。显然不一样,也不需要。我知道我不想每次启动和停止Redis时都输入conf文件的路径,我想除了你之外,其他任何人都会觉得这很有价值。 评论 2018年7月27日18:31
0

如果您成功运行brew服务启动redisbrew服务重启redis,然后在尝试运行时看到“Could not connect to Redis at 127.0.0.1:6379:Connection rejected”redis-cli公司,您应该验证redis配置文件是否存在。

你可以跑步触摸/usr/local/etc/redis.conf或类似创建空配置文件。

然后运行brew服务重启redisredis-cli公司那么瞧!

127.0.0.1:6379>平PONG公司
0

您可以使用重新启动redis服务器brew服务重启redis

如果要更改redis配置,可以执行以下操作:酿造信息redis

要知道你的配置文件在哪里,在我的情况下是在里面/opt/homebrew/opt/redis/bin/redis-server/opt/homebrew/etc/redis.conf

在那里,您可以更改端口,也可以随时随地更改默认端口,因为我正在尝试使用:6379对于其他事情,这会导致我的服务器出现一些问题。

你必须登录来回答这个问题。

不是你想要的答案吗?浏览标记的其他问题.