通过Homebrew安装Redis指南

前言

在 Mac 开发环境中,Redis 作为高性能内存数据库被广泛使用,通过 Homebrew 包管理器可以高效完成 Redis 的安装、启动、配置和停止等全生命周期管理。本文将详细介绍从安装到配置 Redis 服务的完整流程,包括服务管理、配置修改和常见问题处理。

一、Redis 的安装

1.1 检查 Redis

在开发过程中,我们经常需要使用 Redis 作为缓存或者消息队列,但是有时候我们可能忘记了是否安装了 Redis。在终端中执行以下命令来检查是否已安装Redis:

bash 复制代码
brew info redis

这个命令会展示此系统下的redis信息,如果已经安装了 Redis,将会显示 Redis 的版本号。如果未安装,会展示not install,执行以下命令来搜索 Redis 信息:

bash 复制代码
# 查看Redis服务
brew search redis

1.2 安装 Redis

使用 Homebrew 安装 Redis 非常简单,运行以下命令完成 Redis 安装:

bash 复制代码
brew install redis

Homebrew 安装的软件会默认在 /usr/homebrew/Cellar/ 路径下,而 Redis 的配置文件 redis.conf 存放在 /usr/homebrew/etc 路径下。

bash 复制代码
# 查看是否安装完成
brew list

二、配置 Redis

2.1 设置 Redis 密码

在数字化时代,数据安全至关重要。Redis 作为一个开源的内存数据存储系统,广泛应用于高速缓存、消息队列、会话存储等场景。然而,默认安装的 Redis 并不设置密码,存在数据泄露风险,这就需要设置密码以增加数据安全性。Redis 的配置文件位于/usr/homebrew/etc/redis.conf。我们需要编辑该文件来设置密码。在终端中执行以下命令打开配置文件:

bash 复制代码
# 打开redis的配置文件
vim  /opt/homebrew/etc/redis.conf

找到 requirepass 关键字,后面跟的就是密码,如下图所示。

密码的配置默认是注释掉的,即不需要密码,可以进行配置,如下图所示。

密码设置后,所有连接到 Redis 服务器的客户端都需要使用密码进行身份验证,如下图所示。确保妥善保管密码,避免泄露。使用强密码,避免使用简单的密码,以减少被破解的风险。

2.2 配置守护进程

Redis 默认是前台启动,如果关闭终端,Redis 也会停止运行。为了让 Redis 在后台运行,我们需要修改配置文件。进入/usr/homebrew/etc 路径下,然后vim redis.conf ,在文件中找到 daemonize 选项,将其值从 no 改为 yes,目的是为了让redis启动在后台运行。

这里需要重点说明一下,若是将 daemonize 的值改为 yes的话,使用 brew services stop redis 是没有效果,需要手动停止 Redis 服务

2.3 设置Redis远程连接

可以修改绑定 ip 为 0.0.0.0, 代表可以让远程连接,不受ip限制,或者把参数 bind 全部注释掉:

ini 复制代码
# 关闭保护模式,开启的话,只有本机才可以访问redis
protected-mode no
 
 
# 内网一般可以不配置bind,注释掉即可
#bind 127.0.0.1

2.4 Redis 关键路径说明

类型 路径 简要说明
配置文件 /opt/homebrew/etc/redis.conf
数据存储目录 dir /opt/homebrew/var/db/redis/
日志文件 logfile '' 默认为控制台输出,并没有日志文件生成

修改 redis 根目录的 redis.conf 中日志级别,开发环境配置为 debug 即可,生成环境可采用默认值即可。

bash 复制代码
# 日志级别(debug/verbose/notice/warning)
loglevel debug

三、Redis 服务管理

3.1 启动 Redis 服务

安装完成后,可以通过执行命令来启动 Redis 服务。Redis提供两种启动模式,适用于不同场景:

启动方式 命令 特点
后台启动 brew services start redis 随系统启动,终端关闭不影响
前台启动 redis-server /usr/local/etc/redis.conf 临时启动,终端关闭即停止

使用brew命令启动

bash 复制代码
# 使用brew帮助我们启动软件
brew services start redis

使用配置文件启动

配置文件在哪里,看我们安装时的提示:

bash 复制代码
redis-server /opt/homebrew/etc/redis.conf

3.2 验证 Redis 服务

bash 复制代码
# 查看 redis 是否正在运行
ps axu | grep redis
bash 复制代码
brew services info redis

当输出显示Running: ✔时表示服务正常运行。

3.3 连接 Redis 服务

启动服务后,通过 Redis 命令行客户端进行交互。Redis 默认端口号6379,默认密码为空,输入以下命令即可连接:

bash 复制代码
# 连接 Redis 服务(客户端新建终端)

# 不需要身份认证时
redis-cli -h 127.0.0.1 -p 6379

# 需要身份认证时,输入如下命令
redis-cli  -h 127.0.0.1 -p 6379 -a yourpassword

四、常见问题及解决方法

4.1 Redis 无法关闭

在使用 Homebrew 安装和管理 macOS 上的软件包时,如果使用 brew services stop redis 没有效果,可以尝试手动停止 Redis 服务。

bash 复制代码
ps aux | grep redis
# 将 [PID] 替换为实际的进程ID
kill -9 [PID]
# 或者直接杀掉进程
pkill redis-server

4.2 端口冲突

如果在启动Redis时遇到端口冲突错误,可以通过修改配置文件中的 port 参数来更改Redis的默认端口。例如,将 port 6379 改为 port 6380

4.3 权限问题

在某些情况下,可能会遇到权限问题导致Redis无法启动,可以尝试以管理员身份运行Redis服务:

bash 复制代码
sudo brew services start redis

4.4 最大连接数限制

默认情况下,Redis 允许的最大连接数较低。如果需要处理大量并发连接,可以在配置文件中修改 maxclients 参数。例如,将 maxclients 10000 改为 maxclients 20000

五、总结

通过以上步骤,相信小伙伴们应该已经成功在 Mac 上安装并配置了 Redis。无论是用于开发还是生产环境,Redis 都是一个高效且强大的内存数据库。如果在使用过程中遇到问题,可以参考 Redis 的官方文档或社区资源进行解决。

相关推荐
数据知道1 小时前
PostgreSQL:如何把PostgreSQL变成时序数据库(TimescaleDB)
数据库·postgresql·时序数据库
崎岖Qiu1 小时前
【MySQL | 第11篇】一条SQL查询语句的执行全流程简析
数据库·后端·sql·mysql
w***29852 小时前
Knife4j文档请求异常(基于SpringBoot3,查找原因并解决)
java·服务器·数据库
砚边数影10 小时前
运营商网管系统重构:如何解决海量投诉数据下的“查询延迟”与“写入瓶颈”?
网络·数据库·时序数据库·kingbase·kingbasees·数据库平替用金仓·金仓数据库
shsh20010 小时前
mybatis plus打印sql日志
数据库·sql·mybatis
山峰哥10 小时前
数据库调优实战:索引策略与查询优化案例解析
服务器·数据库·sql·性能优化·编辑器
c***032311 小时前
MySQL 启动失败 (code=exited, status=1FAILURE) 异常解决方案
数据库·mysql
ritxgt00611 小时前
MySQL 数据增删改查
android·数据库·mysql
t***442312 小时前
mysql之数字函数
数据库·mysql