mac 安装 redis

1. 安装

通过 Homebrew 安装:

bash 复制代码
brew install redis

安装产物:

版本 8.8.0
安装目录 /opt/homebrew/opt/redis/
可执行文件 /opt/homebrew/opt/redis/bin/redis-serverredis-cli
配置文件 /opt/homebrew/etc/redis.conf
数据目录 /opt/homebrew/var/db/redis
RDB 文件名 dump.rdb
AOF 持久化 关闭(appendonly = no
监听地址 127.0.0.1:6379

2. 启动

注意:本机上 brew services start redis 在当前 macOS 版本上 launchd 未真正拉起 redis-server 进程(实测 brew services info redis 显示 Running: false)。因此采用直接后台启动方式。

启动命令:

bash 复制代码
nohup /opt/homebrew/opt/redis/bin/redis-server /opt/homebrew/etc/redis.conf --daemonize no > /tmp/redis_start.log 2>&1 &

验证启动成功:

bash 复制代码
redis-cli ping

实际输出:

复制代码
PONG

更多服务器信息:

bash 复制代码
redis-cli INFO server | grep -E "redis_version|tcp_port|process_id|config_file"

实测输出:

复制代码
redis_version:8.8.0
process_id:55387
tcp_port:6379
config_file:/opt/homebrew/etc/redis.conf

该方式不会随系统重启自动拉起。重启电脑后需手动再次执行启动命令。

3. 关闭

使用 redis-cli shutdown 优雅关闭(已实测,exit code = 0):

bash 复制代码
redis-cli shutdown

执行后 ps aux | grep redis-server | grep -v grep 无输出,确认进程已退出。

4. 账号密码

当前状态
requirepass 未设置(无密码)
用户系统(ACL) 未配置,默认仅 default 用户

本次未持久化任何密码。文档中"密码开关"演示步骤已在实测后立即关闭,redis.conf 文件未被修改。

临时启用密码(已实测)

bash 复制代码
# 1) 开启密码
redis-cli CONFIG SET requirepass "Redis@1234"

# 2) 未带密码访问会失败
redis-cli PING
# 输出: NOAUTH Authentication required.

# 3) 带密码访问成功
redis-cli -a "Redis@1234" PING
# 输出: PONG

# 4) 取消密码,恢复无密码状态
redis-cli -a "Redis@1234" CONFIG SET requirepass ""

# 5) 验证已无密码
redis-cli PING
# 输出: PONG

上述 CONFIG SET 是运行时生效,不会写入 redis.conf,进程重启后还原。若要持久化,需要修改 /opt/homebrew/etc/redis.conf 中的 requirepass 行。

5. 使用示例

以下命令本次均已实际执行并通过。

5.1 字符串与计数

bash 复制代码
redis-cli SET demo:greeting "hello redis"      # OK
redis-cli GET demo:greeting                    # "hello redis"
redis-cli INCR demo:counter                    # 1
redis-cli INCR demo:counter                    # 2
redis-cli GET demo:counter                     # "2"

5.2 过期

bash 复制代码
redis-cli SET demo:ttl_key "will expire" EX 60   # OK,60 秒后失效
redis-cli TTL demo:ttl_key                       # 60

5.3 列表

bash 复制代码
redis-cli RPUSH demo:list a b c                  # 3
redis-cli LRANGE demo:list 0 -1                  # a, b, c

5.4 哈希

bash 复制代码
redis-cli HSET demo:user:1 name alice age 30     # 2
redis-cli HGETALL demo:user:1
# name
# alice
# age
# 30

5.5 集合

bash 复制代码
redis-cli SADD demo:tags redis db cache          # 3
redis-cli SMEMBERS demo:tags
# redis
# db
# cache

5.6 模糊查询与批量删除

bash 复制代码
redis-cli KEYS "demo:*"
redis-cli DEL demo:greeting demo:counter demo:ttl_key demo:list demo:user:1 demo:tags
redis-cli DBSIZE                                 # 0

6. 常用日志与文件位置

文件 路径
配置文件 /opt/homebrew/etc/redis.conf
数据目录 /opt/homebrew/var/db/redis
RDB 快照 /opt/homebrew/var/db/redis/dump.rdb
启动日志 /tmp/redis_start.log(本文档使用的启动方式)

7. 快速参考

动作 命令
启动 nohup /opt/homebrew/opt/redis/bin/redis-server /opt/homebrew/etc/redis.conf --daemonize no > /tmp/redis_start.log 2>&1 &
关闭 redis-cli shutdown
连通性 redis-cli ping
进入交互 redis-cli
查看进程 `ps aux
相关推荐
阿里巴巴P8资深技术专家2 小时前
Redis连接工具 —— Redis Manager
redis
小席是个热心肠5 小时前
Redis的自我学习
数据库·redis·学习
EXI-小洲11 小时前
MacOS IDEA将本地项目代码上传至SVN空仓库
macos·svn·intellij-idea
都说名字长不会被发现13 小时前
防重复提交组件:从“双击下了两单“说起
java·redis·spring·防重复提交
2602_9599609214 小时前
电商大厂Java面试实录:Spring Boot/JVM/Redis/Kafka/微服务/安全/测试全解析
java·jvm·spring boot·redis·面试题
小的~~15 小时前
面试被问懵了?为什么 Redis 单线程还能保证 Lua 脚本原子性,却偏偏选了 Lua?
redis·面试·lua
做一个AK梦1 天前
Redis 深入浅出
java·数据库·redis·缓存
ruleslol1 天前
Redis 雪崩与服务降级
数据库·redis
Java牛马1 天前
Caffeine 缓存及其应用相关总结
java·redis·缓存·caffeine·数据一致性·本地缓存
weixin_531670891 天前
Interlude起来:久坐提醒软件为什么需要登录?有没有完全本地运行的Mac休息提醒软件?
人工智能·macos·swift