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
  • 启动redis

    sudo launchctl start io.redis.redis-server

  • 关闭redis

    sudo launchctl stop io.redis.redis-server

8)可对上述命令进行简化(通过设置别名的方式)
  • 控制台输入cd,切换到用户目录

  • 编辑环境变量配置,将别名设置粘贴到配置文件

    vi .bash_profile

    alias redisstart='sudo launchctl start io.redis.redis-server'

    alias redisstop='sudo launchctl stop io.redis.redis-server'

    source ~/.bash_profile

    source ./.bash_profile

保存退出即可!

三、总结

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

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

over!

参考文档:

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

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

相关推荐
爱喝雪碧的可乐9 小时前
【Redis 毁灭计划】7 大高危操作打崩线上服务!从缓存雪崩到数据库宕机,90% 程序员都踩过的坑
开发语言·网络·redis·php
白玉cfc9 小时前
OC底层原理:alloc&init&new
c++·macos·ios·objective-c·xcode
彭于晏Yan9 小时前
Spring Boot 整合 WebSocket + Redis 实现离线消息(三)
spring boot·redis·websocket
Mike_detailing10 小时前
资源分享:VMware-Fusion-25H2u1 和 arm版本win11
macos·arm·虚拟机
fengxin_rou10 小时前
黑马点评实战篇|第七篇:Redis消息队列
数据库·redis·缓存
千月落10 小时前
Redis Cluster 集群部署
数据库·redis·缓存
承渊政道10 小时前
【递归、搜索与回溯算法】(掌握记忆化搜索的核心套路)
数据结构·c++·算法·leetcode·macos·动态规划·宽度优先
REDcker10 小时前
跨平台编译详解 工具链配置与工程化实践
linux·c++·windows·macos·c·跨平台·编译
卷毛的技术笔记10 小时前
从零到一:深入浅出分布式锁原理与Spring Boot实战(Redis + ZooKeeper)
java·spring boot·redis·分布式·后端·面试·java-zookeeper
白豆五11 小时前
Mac平台安装Claude Code
macos