环境搭建:Redis 概述、安装与配置指南(含windows、macOS、Linux)
Redis 是一个开源的内存数据结构存储系统,广泛应用于缓存、消息队列和实时分析等场景。本文将详细介绍如何在不同操作系统上安装和配置 Redis,包括验证安装的步骤、配置文件的修改以及常见问题的解决方案。此外,我们将讨论 Redis 与 MySQL 和 MongoDB 的关系及其在不同应用场景中的作用。
大纲
1. Redis 简介
Redis 是一个高性能的内存数据结构存储系统,支持丰富的数据结构类型,包括字符串、哈希、列表、集合和有序集合等。其高效的内存存储特性使得它非常适合于高频访问的数据场景。
1.1 Redis 与 MySQL 和 MongoDB 的关系
Redis、MySQL 和 MongoDB 是三种广泛使用的数据库系统,各自适用于不同的应用场景。以下是它们之间的关系及特点:
| 特性 | Redis | MySQL | MongoDB | 
|---|---|---|---|
| 类型 | 内存数据结构存储系统 | 关系型数据库管理系统 | 文档型数据库管理系统 | 
| 数据模型 | 键值对 (Key-Value) | 关系模型 (表、行、列) | 文档模型 (JSON/BSON 文档) | 
| 持久化 | 支持 RDB 和 AOF 两种持久化机制 | 数据持久化到磁盘 | 数据持久化到磁盘 | 
| 性能 | 高速读写,低延迟,适用于缓存和实时数据处理 | 性能稳定,适合复杂查询和事务管理 | 高性能读写,适用于大数据量存储和快速查询 | 
| 使用场景 | 缓存、会话存储、消息队列 | 事务处理、结构化数据存储、复杂查询 | 大数据分析、内容管理、实时数据处理 | 
| 事务支持 | 支持简单的事务控制 | 完整的 ACID 事务支持 | 支持多文档事务 | 
| 扩展性 | 支持集群和主从复制,横向扩展方便 | 支持主从复制,分片支持有限 | 支持分片和复制,具备高扩展性 | 
| 查询语言 | 简单命令行操作 | SQL 查询语言 | MongoDB 查询语言(类 JSON) | 
Redis 的特点
- 内存存储: Redis 将数据存储在内存中,读写速度极快,非常适合需要快速响应的场景。
- 数据结构丰富: 支持多种数据结构,使其应用范围广泛。
- 灵活性: 适用于缓存、实时数据分析、消息队列等。
MySQL 的特点
- 关系模型: MySQL 使用关系型数据模型,非常适合需要复杂查询和事务处理的场景。
- 数据一致性: 提供强大的 ACID 特性,确保数据的一致性和完整性。
- 广泛应用: 适用于大多数传统应用,如企业应用、电子商务网站等。
MongoDB 的特点
- 文档存储: MongoDB 使用文档模型,适合存储非结构化数据。
- 高扩展性: 支持大规模数据存储和高效的读写性能。
- 灵活查询: 提供强大的查询功能,适用于大数据分析和内容管理系统。
在应用场景中,Redis 通常被用作 MySQL 和 MongoDB 的缓存层,用于加速数据访问,而 MySQL 和 MongoDB 则用于持久化存储和复杂数据处理。通过结合使用这些数据库,可以实现性能与功能的最佳平衡。

图 1: Redis、MySQL 和 MongoDB 的关系图
2. 安装 Redis
2.1 在 Windows 上安装 Redis
2.1.1 下载和安装
Redis 官方并没有直接支持 Windows 的版本,但可以通过第三方工具来安装。
- 下载 Redis for Windows: 从 Microsoft Open Tech GitHub 下载最新的 Redis Windows 版本。

*图 2: 下载页面
- 安装 Redis: 
  -  解压下载的文件到指定目录,例如 D:\RootRedis。
-  打开解压目录,找到 redis-server.exe,双击运行。
-  出现 [23476] 02 Aug 22:28:39.906 # Warning: no config file specified, using the default config. In order to specify a config file use D:\RootRedis\redis-server.exe /path/to/redis.conf _._ _.-``__ ''-._ _.-`` `. `_. ''-._ Redis 3.0.504 (00000000/0) 64 bit .-`` .-```. ```\/ _.,_ ''-._ ( ' , .-` | `, ) Running in standalone mode |`-._`-...-` __...-.``-._|'` _.-'| Port: 6379 | `-._ `._ / _.-' | PID: 23476 `-._ `-._ `-./ _.-' _.-' |`-._`-._ `-.__.-' _.-'_.-'| | `-._`-._ _.-'_.-' | http://redis.io `-._ `-._`-.__.-'_.-' _.-' |`-._`-._ `-.__.-' _.-'_.-'| | `-._`-._ _.-'_.-' | `-._ `-._`-.__.-'_.-' _.-' `-._ `-.__.-' _.-' `-._ _.-' `-.__.-' [23476] 02 Aug 22:28:39.909 # Server started, Redis version 3.0.504 [23476] 02 Aug 22:28:39.909 * The server is now ready to accept connections on port 6379
-  Redis 启动信息解析表格 信息项 内容 解释 默认配置 PID (进程ID) [23476]Redis 进程的标识符 (PID)。每次启动 Redis 时,系统会分配一个唯一的 PID。 否 启动时间 02 Aug 22:28:39.906Redis 启动的日期和时间戳。 否 配置文件 Warning: no config file specified, using the default config.启动时未指定配置文件,因此使用默认配置。 是 版本信息 Redis 3.0.504 (00000000/0) 64 bit显示 Redis 的版本号和编译信息。 是 运行模式 Running in standalone mode表示 Redis 运行在单机模式。 是 监听端口 Port: 6379Redis 默认监听的端口是 6379。 是 进程ID (PID) PID: 23476Redis 进程的唯一标识符。 否 网站 http://redis.io官方 Redis 网站链接。 是 服务器启动信息 Server started, Redis version 3.0.504Redis 服务器成功启动。 是 连接准备 The server is now ready to accept connections on port 6379Redis 服务器已准备好接收连接。 是 
 
-  
2.1.2 验证安装
为了验证 Redis 安装成功,请确保您在 Redis 的安装目录下执行命令:
-  打开命令提示符(Command Prompt)或 PowerShell - 您可以通过点击 开始菜单,输入cmd或PowerShell来启动。
 
- 您可以通过点击 
-  使用 cd指令进入 Redis 安装目录假设 Redis 安装在 D:\RootRedis目录下,您需要进入该目录:cd D:\RootRedis
-  运行 redis-cli ping命令以验证安装确保您在正确的目录下,执行以下命令: redis-cli ping
-  期望输出 如果 Redis 正常运行,您应该看到如下响应: PONG这表示 Redis 客户端已成功连接到 Redis 服务器。 
2.1.3 配置环境变量
首先回答一个问题,刚刚验证安装为什么需要进入 Redis 安装目录?
- 路径依赖: redis-cli命令是 Redis 提供的客户端工具,需要在包含该工具的目录下执行,或确保该目录已被添加到系统的PATH环境变量中。
- 环境配置: 在特定的开发环境中,可能需要特定版本的 Redis 客户端与服务器通信,因此必须准确定位到安装路径。
解决方案:使用 PATH 环境变量
如果您希望在任何路径下执行 redis-cli 命令,可以将 Redis 安装目录添加到系统的 PATH 环境变量中。以下是设置环境变量的步骤:
方法 1: 使用命令提示符或 PowerShell 添加路径
-  打开命令提示符或 PowerShell。 
-  临时设置路径(仅当前会话有效): set PATH=%PATH%;D:\RootRedis或在 PowerShell 中: $env:PATH += ";D:\RootRedis"
-  永久设置路径: -  命令提示符: setx PATH "%PATH%;D:\RootRedis"
-  PowerShell: [System.Environment]::SetEnvironmentVariable("Path", $env:Path + ";D:\RootRedis", [System.EnvironmentVariableTarget]::Machine)
 
-  
方法 2: 使用图形界面添加路径
-  打开“高级系统设置” - 在“此电脑”上右键,选择“属性”,然后点击“高级系统设置”。
 
-  进入环境变量设置 - 在“系统属性”窗口中,点击“环境变量”。
 
-  编辑系统环境变量 - 在“系统变量”区域,选择 Path,然后点击“编辑”。
- 点击“新建”,输入 D:\RootRedis,并确认保存。
 
- 在“系统变量”区域,选择 
通过明确进入 Redis 安装目录或设置环境变量,就可以在任何地方都能顺利使用 Redis CLI 工具。
2.2 在 macOS 上安装 Redis
2.2.1 使用 Homebrew 安装
Homebrew 是 macOS 上一个常用的软件包管理工具,可以方便地安装 Redis。
-  更新 Homebrew: brew update
-  安装 Redis: brew install redis
2.2.2 验证安装
-  启动 Redis 服务: brew services start redis
-  使用 redis-cli验证:redis-cli ping
-  返回 PONG表示安装成功。
2.3 在 Linux 上安装 Redis
2.3.1 使用包管理器安装
在大多数 Linux 发行版上,可以使用包管理器安装 Redis。例如,在 Ubuntu 上:
-  更新包列表: sudo apt update
-  安装 Redis: sudo apt install redis-server
2.3.2 验证安装
-  启动 Redis 服务: sudo systemctl start redis-server
-  检查 Redis 状态: sudo systemctl status redis-server
3. 配置 Redis
3.1 修改 Redis 配置文件
Redis 的配置文件在不同操作系统中的位置可能会有所不同。以下是如何在各系统上找到并修改 Redis 配置文件的详细步骤:
-  Linux/macOS: -  配置文件通常位于 /etc/redis/redis.conf。
-  使用以下命令打开文件进行编辑: sudo nano /etc/redis/redis.conf
 
-  
-  Windows: -  默认情况下,Redis 的 Windows 版本使用 redis.windows.conf作为配置文件。通常位于 Redis 安装目录,例如D:\RootRedis\redis.windows.conf。
-  可以使用任意文本编辑器(如 Notepad)打开此文件: notepad D:\RootRedis\redis.windows.conf
 
-  
主要参数设置
-  bind:绑定地址,默认是127.0.0.1。可以更改为需要监听的 IP 地址。bind 127.0.0.1
-  port:Redis 端口,默认是6379。可以更改为其他端口以提高安全性。port 6379
-  requirepass:设置访问 Redis 的密码(可选),以增强安全性。requirepass your_password_here
-  maxmemory:设置最大内存使用限制。maxmemory 256mb
-  maxmemory-policy:内存淘汰策略。maxmemory-policy allkeys-lru
3.2 设置密码保护
为了提高安全性,建议为 Redis 设置密码保护。
-  编辑配置文件: -  在配置文件中找到 requirepass选项,取消注释并设置密码:requirepass your_password_here
 
-  
-  保存并重启服务: -  Linux/macOS: sudo systemctl restart redis-server
-  Windows: -  如果 Redis 作为服务运行,重启服务的方法如下: Stop-Service -Name Redis Start-Service -Name Redis
-  如果 Redis 手动运行,请关闭并重新启动 redis-server.exe:Stop-Process -Name redis-server Start-Process -FilePath "D:\RootRedis\redis-server.exe" -ArgumentList "D:\RootRedis\redis.windows.conf"
 
-  
 
-  
3.3 配置持久化选项
Redis 提供两种持久化方式:RDB 快照和 AOF 日志。
-  RDB 快照:默认开启,每隔一段时间生成数据快照。 -  配置项示例: save 900 1 save 300 10 save 60 10000
 
-  
-  AOF 日志:记录每次写操作,可以通过追加日志重建数据。 -  开启 AOF: appendonly yes
 
-  
4. 启动和管理 Redis 服务
4.1 启动 Redis 服务
根据是否配置了环境变量,Windows 下启动 Redis 的方法略有不同:
-  Windows: -  已配置环境变量: -  在 命令提示符(Command Prompt) 或 PowerShell 中,需运行: # 启动 Redis 服务器,并指定配置文件,配置文件路径D:\RootRedis\redis.windows.conf redis-server D:\RootRedis\redis.windows.conf注意:即使您配置了环境变量,只是为了使系统知道 redis-server.exe和redis-cli.exe这类可执行文件的路径,而并不自动处理配置文件的路径。当您在命令提示符或 PowerShell 中使用redis-server启动 Redis 并指定配置文件时,您需要确保 Redis 能够找到该配置文件所在的正确路径。
-  默认配置: 如果您只运行 redis-server而不指定任何配置文件,Redis 将使用默认配置启动。
 powershell redis-server
 
-  
-  未配置环境变量: -  需要进入 Redis 的安装目录(如 D:\RootRedis)后启动:# 启动 Redis 服务器,并指定配置文件,配置文件路径D:\RootRedis\redis.windows.conf cd D:\RootRedis .\redis-server.exe redis.windows.conf
 
-  
 
-  
-  macOS 和 Linux: -  使用以下命令启动 Redis: redis-server /etc/redis/redis.conf
 
-  
4.2 检查 Redis 状态
-  Linux/macOS: -  使用 systemctl命令检查 Redis 服务状态:sudo systemctl status redis-server
 
-  
-  Windows: -  已配置环境变量: -  可以直接使用命令: redis-cli ping
 
-  
-  未配置环境变量: -  在 Redis 安装目录下,执行: cd D:\RootRedis .\redis-cli.exe ping
 
-  
 
-  
-  输出示例: PONG
5. 常见问题与解决方案
5.1 无法连接到 Redis 服务
5.1.1 问题描述
Redis 客户端无法连接到 Redis 服务器,可能出现如下错误信息:
Could not connect to Redis at 127.0.0.1:6379: Connection refused
5.1.2 解决方案
-  检查 Redis 是否正在运行: - 使用命令 redis-cli ping验证。
 
- 使用命令 
-  检查防火墙设置: - 确保端口 6379未被防火墙阻挡。
 
- 确保端口 
-  检查配置文件: - 确保 bind和port设置正确。
 
- 确保 
5.2 Redis 性能优化
5.2.1 调整最大内存使用
在配置文件中设置最大内存限制:
maxmemory 256mb
maxmemory-policy allkeys-lru
5.2.2 使用 Redis 集群
对于大规模应用,可以考虑使用 Redis 集群来分担负载。
6. 结论
本文详细介绍了 Redis 的概述、安装和配置方法,适用于多种操作系统。通过正确配置和优化,Redis 可以显著提高应用程序的性能和响应速度。Redis、MySQL 和 MongoDB 各有特点,通过结合使用,可以实现更高效的数据处理和存储解决方案。希望这篇文章能帮助你快速搭建并运行 Redis 服务,以满足不同的业务需求。
以上就是完整的 Redis 概述、安装与配置指南。如果您有任何问题或建议,请随时在评论区留言。希望这篇文章对您有所帮助!










