news 2026/4/17 18:49:40

MacOs安装Redis并设置为开机、后台启动

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
MacOs安装Redis并设置为开机、后台启动

前言

最近闲来无事,将自己的MBP系统重装里,导致里面原来安装的软件都需要重新安装,今天记录一下MacOs安装Redis并设置为开机启动、后台启动的步骤,安装过程略有波折,参考里几篇文章才搞定。

一、安装Redis

两种方式,我都尝试了,也都成功了,但第一种方式安装完后没有搞定开机自启动,所以又尝试了方法2:

1.去官网下载安装包手动编译、安装

1)下载redis

reids下载地址http://download.redis.io/releases,当前稳定版为redis-7.0.8.tar.gz

2)解压
tar zxvf redis-7.0.8.tar.gz
3)复制到/usr/local/redis目录
cp?redis-7.0.8?/usr/local/redis
4)编译redis
sudo make
5)如果是第一次,系统会要求下载xcode,大概2分钟下载完成,继续安装
sudo make install
6)至此安装成功,这时候千万不要启动Redis

因为没有配置路径,会出错,需要修改redis.conf的配置

我的redis.conf 在 /usr/local/redis-7.0.8目录下,不同版本或操作系统会稍有不同,大家可自行寻找。修改dir的路径:

7)启动redis

redis-server

此种方法可以启动成功。

2.使用HomeBrew安装

1)执行安装命令

brew install redis

第一次可能需要下载一些依赖包,如果执行完没有安装成功,请再执行一次这个命令。

2)查看安装信息,看看安装到哪个目录去了。

brew list redis

/usr/local/Cellar/redis/7.0.8/homebrew.mxcl.redis.plist这个文件比较关键,是我们设置开机自启动的关键。

二、设置开机自启动

通过前面的安装,我们在控制台执行redis-server就可以启动了,但有个问题,这样启动好后需要一直开着这个窗口,关机重启后,需要重新启动才行,所以接着往下看。

网上一般提到的开机自启动设置方式,需要自己手动新建.plist这么一个文件,但大家看到了,实际上使用brew的安装方式,这个文件已经生成好了,但我尝试直接用这个文件去设置自启动,失败了。

1.先查看这个文件中的内容

vi /usr/local/Cellar/redis/7.0.8/homebrew.mxcl.redis.plist

复制一下我绿线画出来的部分,后面有用。

<string>/usr/local/opt/redis/bin/redis-server</string> <string>/usr/local/etc/redis.conf</string>

提示下vi进去后的文本编辑方式:

i:进入编辑模式

esc:退出编辑模式

:q!:不保存退出

:wq:保存退出

2.设置为开机自启动

sudo launchctl load /usr/local/Cellar/redis/7.0.8/homebrew.mxcl.redis.plist

很可惜,报错了

按报错信息去搜索,大部分都说是因为文件的权限不对,要sudochmod600为这个权限,我也试过了,依然不行。

下面是正确的方式:

1)创建.plist配置文件
sudo vi /Library/LaunchDaemons/io.redis.redis-server.plist

注意,这里不要拷贝/usr/local/Cellar/redis/7.0.8/homebrew.mxcl.redis.plist这个文件,我开始耍小聪明,拷贝过来依然会报权限不足的问题,所以老老实实vi一个新文件出来。

2)将下面配置内容拷贝到io.redis.redis-server.plist文件中
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>Label</key> <string>io.redis.redis-server</string> <key>ProgramArguments</key> <array> <string>/usr/local/opt/redis/bin/redis-server</string> <string>/usr/local/etc/redis.conf</string> </array> <key>RunAtLoad</key> <true/> </dict> </plist>
3)检查路径是否正确
<string>/usr/local/opt/redis/bin/redis-server</string> <string>/usr/local/etc/redis.conf</string>

要与/usr/local/Cellar/redis/7.0.8/homebrew.mxcl.redis.plist文件中的路径是一样的。

4)保存退出
:wq
5)执行开机自启动命令
sudo launchctl load /Library/LaunchDaemons/io.redis.redis-server.plist
6)验证是否生效

重启电脑,并执行redis-cli,显示为下图即成功

7)使用launchctl手动启动/关闭redis
8)可对上述命令进行简化(通过设置别名的方式)

保存退出即可!

三、总结

两种安装方式都可以按文章设置为开机自启动!

安装完毕,容易遇到的坑,权限不足,编译错误等,注意即可,耐心解决问题。

over!

参考文档:

1.MacOS redis开机启动设置_tacity的博客-CSDN博客_mac redis 开机启动

2.macOS安装redis并设置服务自启动_小范馆的博客-CSDN博客_macos redis 启动

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/17 21:18:10

导论期末模拟考【简】

一、计算思维与算法基础1. 计算思维定义&#xff1a;运用计算机科学的基本概念进行问题求解、系统设计、理解人类行为的方式。核心步骤&#xff1a;抽象&#xff08;首要步骤&#xff09;分解模式识别算法设计2. 算法是问题求解的核心。表示方法&#xff1a;自然语言伪代码流程…

作者头像 李华
网站建设 2026/4/18 3:31:33

Mysql ONLY_FULL_GROUP_BY模式详解、group by非查询字段报错

文章目录 一、问题报错二、ONLY_FULL_GROUP_BY模式 2.1、什么是ONLY_FULL_GROUP_BY&#xff1f;2.2、为什么要使用ONLY_FULL_GROUP_BY&#xff1f;2.3、查看sql_mode 三、解决方法 3.1、关闭only_full_group_by模式 3.1.1、方法一&#xff1a;关闭当前会话中的only_full_group…

作者头像 李华
网站建设 2026/4/17 22:38:33

MS SQL Server partition by 函数实战三 成绩排名

目录 需求 范例运行环境 视图样本设计 功能实现 基础数据展示 SQL语句 继续排序 小结 需求 假设有若干已更新考试成绩的考生&#xff0c;考试成绩包括总成绩、分项成绩1、分项成绩2&#xff0c;其它信息包括应聘岗位名称、姓名等信息。现希望根据总成绩计算排名&#…

作者头像 李华
网站建设 2026/4/18 3:38:15

从普通产品经理到AI产品经理,你需要掌握的AI思维与核心技能:AI大模型产品经理从零基础到进阶

AI产品经理与普通产品经理的核心区别在于AI思维。人工智能产业链分为基础层、技术层和应用层。AI产品经理可分为突破型、创新型、应用型和普及型四类&#xff0c;需找准定位&#xff0c;避免常见误区。提升能力需专注目标领域&#xff0c;持续学习&#xff0c;扩大交流圈&#…

作者头像 李华
网站建设 2026/4/18 3:31:55

Thinkphp和Laravel框架的成都某民宿预订系统的设计与实现_r93v34dv

目录摘要项目开发技术介绍PHP核心代码部分展示系统结论源码获取/同行可拿货,招校园代理摘要 本研究基于ThinkPHP和Laravel框架&#xff0c;设计并实现了一款面向成都地区的民宿预订系统。系统采用B/S架构&#xff0c;结合MySQL数据库&#xff0c;旨在为用户提供高效的房源查询…

作者头像 李华
网站建设 2026/4/18 3:32:42

由continue引发的一个debug灾难

整个代码的简化逻辑是这样的&#xff0c;由于continue的使用含义不清楚&#xff0c;导致debug了半天。这里写代码时&#xff0c;错误的将continue认为是else分支&#xff0c;什么也不干&#xff0c;往下继续执行。 但是这样的理解是极其错误的&#xff0c;continue的意思是跳过…

作者头像 李华