Redis是一款高性能的开源内存数据存储系统,支持字符串、哈希、列表、集合、有序集合等多种数据结构,常用于缓存、Session存储、消息队列、排行榜以及分布式锁等场景。对于后端开发、微服务开发和本地测试来说,在Windows系统中搭建Redis开发环境非常常见。
Windows环境安装Redis的方式并不只有一种。根据使用目的不同,可以选择WSL、Docker或者Windows兼容发行版。安装完成后,再配合RedisInsight、Another Redis Desktop Manager等可视化工具,可以更方便地查看Key、执行命令和分析Redis运行状态。
一、Windows安装Redis前需要了解什么
Redis官方主要面向Linux、macOS等平台提供原生支持,Windows并不是Redis服务器长期维护的主要平台。因此,在Windows上使用Redis时,需要根据自己的开发环境选择合适的运行方式。
常见方案主要有三种:
使用WSL运行Linux版Redis
使用Docker运行Redis容器
使用Windows兼容版Redis直接运行
三种方式都能够满足本地开发需求,但在稳定性、配置难度、资源隔离以及后续维护方面存在明显区别。
如果主要用于学习Redis命令和简单开发,Windows兼容版更加直观;如果希望尽量接近Linux服务器环境,WSL更合适;如果项目本身已经采用Docker,那么直接使用Redis容器通常是最方便的方案。
二、方式一:通过WSL安装Redis
WSL(Windows Subsystem for Linux)可以在Windows系统中运行Linux环境。对于需要学习Redis或者进行后端开发的用户来说,这是一种比较推荐的安装方式。
1. 安装WSL
以管理员身份打开PowerShell,执行:
wsl --install执行完成后,根据提示重启Windows。
重新进入系统后,可以检查WSL状态:
wsl --status查看已经安装的Linux发行版:
wsl --list --verbose如果使用Ubuntu作为Linux发行版,可以直接进入:
wsl2. 更新软件源
进入Ubuntu后执行:
sudo apt update
sudo apt upgrade然后安装Redis:
sudo apt install redis-server安装完成后,可以查看Redis版本:
redis-server --version3. 启动Redis
不同Linux发行版的服务管理方式可能存在差异。在Ubuntu环境中,可以尝试:
sudo service redis-server start查看运行状态:
sudo service redis-server status如果Redis已经启动,可以使用Redis CLI测试:
redis-cli进入命令行后执行:
PING正常情况下会返回:
PONG这说明Redis服务器已经正常运行。
4. WSL方式的优点
WSL最大的优势是运行环境与生产Linux服务器更加接近。
例如服务器上通常使用:
systemctl
redis-server
redis-cli等Linux工具进行管理,在WSL中也可以按照Linux环境的思路进行学习和开发。
此外,WSL安装的软件不会直接污染Windows系统环境,对于需要同时运行多个开发服务的用户也比较友好。
需要注意的是,WSL毕竟增加了一层Linux运行环境。如果只是临时体验Redis,可能会感觉配置略显繁琐。
三、方式二:使用Docker安装Redis
如果电脑已经安装Docker Desktop,那么使用Docker运行Redis通常是最省心的方案之一。
1. 检查Docker环境
打开PowerShell或者CMD:
docker --version确认Docker可以正常使用后,可以拉取Redis镜像:
docker pull redis如果希望使用明确版本,也可以指定标签,例如:
docker pull redis:7实际项目中建议固定Redis大版本甚至具体版本,避免镜像更新导致开发环境发生变化。
2. 创建Redis容器
最简单的启动方式:
docker run -d --name redis -p 6379:6379 redis:7其中:
-d表示后台运行容器--name redis表示将容器命名为redis-p 6379:6379表示将Windows主机6379端口映射到容器6379端口redis:7表示使用Redis 7镜像
启动完成后查看容器:
docker ps如果看到Redis容器处于Up状态,就说明服务已经启动。
3. 测试Redis连接
可以进入容器:
docker exec -it redis redis-cli执行:
PING返回:
PONG即可确认Redis运行正常。
4. 配置Redis密码
实际开发环境中,不建议长期使用完全没有认证配置的Redis服务。
可以通过配置文件或者启动参数设置密码。例如:
docker run -d --name redis -p 6379:6379 redis:7 redis-server --requirepass "your_password"连接时:
docker exec -it redis redis-cli -a "your_password"不过需要注意,命令行中直接写密码可能导致敏感信息暴露。正式项目更适合通过配置文件、环境变量以及密钥管理机制进行处理。
5. 使用数据卷保存Redis数据
如果直接创建容器,没有进行数据持久化配置,那么删除容器后可能无法继续使用容器内部的数据。
可以创建Docker Volume:
docker volume create redis-data然后启动:
docker run -d `
--name redis `
-p 6379:6379 `
-v redis-data:/data `
redis:7 `
redis-server --appendonly yes这样Redis数据可以保存在Docker Volume中。
对于开发环境而言,这种方式已经能够满足大多数测试需求。
四、方式三:使用Windows兼容版Redis
对于不希望使用WSL或者Docker的用户,也可以使用Windows环境下的Redis兼容实现。
这类方案的优势是安装简单,可以像普通Windows程序一样直接启动服务,非常适合个人学习、简单项目以及本地调试。
安装前需要注意版本维护情况和项目兼容性。由于Windows并非Redis官方长期重点支持的平台,选择第三方Windows兼容发行版时,应重点关注项目活跃度、Redis版本兼容情况以及安全性。
1. 下载Windows版本
获取安装包后,根据发行版提供的安装方式完成安装。
如果安装程序提供Windows服务选项,可以将Redis配置为系统服务,这样Windows启动后可以自动运行Redis。
如果采用压缩包形式,一般可以直接解压到指定目录,例如:
D:Redis进入Redis目录:
cd D:Redis然后启动服务器:
redis-server.exe如果窗口出现Redis启动信息,说明服务器已经运行。
2. 使用Redis CLI测试
另开一个PowerShell窗口:
cd D:Redis运行:
redis-cli.exe执行:
PING返回:
PONG即可完成基本验证。
3. 将Redis配置为Windows服务
部分Windows兼容发行版支持通过服务方式运行Redis。
例如某些版本可以使用类似:
redis-server.exe --service-install然后启动服务:
redis-server.exe --service-start具体参数需要以当前Redis Windows发行版提供的文档为准,不同版本并不完全一致。
相比直接运行redis-server.exe,Windows服务方式更适合需要长期运行Redis的开发环境。
五、三种Redis安装方式对比
| 安装方式 | 配置难度 | Linux兼容性 | 隔离性 | 适合场景 |
|---|---|---|---|---|
| WSL | 中等 | 高 | 较高 | 后端开发、Linux环境学习 |
| Docker | 较低 | 高 | 高 | 项目开发、微服务、容器化环境 |
| Windows兼容版 | 低 | 较低 | 一般 | 简单测试、Redis入门 |
如果开发环境已经使用Docker,优先推荐Docker。
如果希望深入学习Linux服务器上的Redis运维操作,可以选择WSL。
如果只是想快速在Windows电脑上启动一个Redis服务进行测试,Windows兼容版更加直接。
六、Windows安装Redis后的常用测试命令
Redis启动后,可以通过redis-cli执行各种操作确认服务是否正常。
测试字符串:
SET username redis
GET username测试列表:
LPUSH users Tom
LPUSH users Jerry
LRANGE users 0 -1测试哈希:
HSET user:1 name Tom age 20
HGETALL user:1查看数据库中的Key数量:
DBSIZE查看服务器信息:
INFO查看Redis运行状态:
PING清空当前数据库:
FLUSHDB清空全部数据库:
FLUSHALLFLUSHDB和FLUSHALL属于高风险操作,开发环境中使用时也要确认当前连接的是测试Redis,避免误清生产数据。
七、Windows下Redis默认端口是什么
Redis默认监听端口通常是:
6379如果本地程序连接Redis,一般可以使用:
127.0.0.1:6379例如Java项目常见配置:
spring:
data:
redis:
host: 127.0.0.1
port: 6379如果Redis配置了密码,还需要增加对应认证配置。
使用Docker时尤其要注意端口映射。如果执行:
docker run -d --name redis -p 6379:6379 redis:7那么Windows主机上的6379端口才能访问容器内Redis。
八、Redis连接失败的常见原因
1. Redis服务没有启动
可以使用Docker:
docker ps或者在Windows中检查Redis相关进程和服务。
WSL环境可以执行:
redis-cli ping如果无法连接,需要先确认Redis服务器是否正在运行。
2. 6379端口被占用
Windows中可以执行:
netstat -ano | findstr :6379如果发现6379已经被其他程序占用,可以选择停止冲突程序,或者修改Redis端口。
3. Docker端口映射错误
例如容器运行:
docker run -d --name redis -p 6380:6379 redis:7此时Windows客户端应该连接:
127.0.0.1:6380而不是6379。
4. 密码配置不正确
如果Redis启用了认证,直接执行:
PING可能得到认证相关错误。
需要先执行:
AUTH your_password然后再执行:
PING5. Redis配置文件存在问题
如果修改了redis.conf,需要重点检查端口、绑定地址、认证、持久化等配置。
例如:
port 6379用于设置监听端口。
而:
bind 127.0.0.1则限制Redis只监听本机回环地址。
开发环境通常建议尽量限制Redis网络访问范围,不要为了远程连接而直接暴露Redis到公网。
九、Redis可视化工具推荐
使用命令行操作Redis非常高效,但面对大量Key、复杂Hash结构或者需要频繁查看TTL时,可视化客户端会明显提高工作效率。
1. RedisInsight
RedisInsight是Redis生态中比较知名的图形化管理工具。
它支持连接Redis实例、浏览Key、查看数据结构、执行Redis命令以及查看服务器信息等功能。
对于刚开始学习Redis的开发者来说,RedisInsight的界面比较直观,可以减少频繁使用CLI命令的成本。
常见使用方式是启动Redis后,在RedisInsight中创建连接:
Host: 127.0.0.1
Port: 6379
Username: default
Password: 根据实际配置填写如果使用Docker运行Redis,只要Windows主机已经映射6379端口,通常可以直接通过127.0.0.1:6379连接。
2. Another Redis Desktop Manager
Another Redis Desktop Manager是一款比较常见的Redis桌面管理工具。
它支持多个Redis连接管理,可以查看Key、执行命令、浏览不同数据结构,并且适合本地开发环境使用。
如果开发过程中经常需要在多个Redis实例之间切换,例如:
本地Redis
测试Redis
开发Redis
Docker Redis可以利用连接管理功能进行区分。
使用第三方Redis客户端时,同样需要注意Redis版本兼容性以及工具自身的维护状态。
3. Redis Commander
Redis Commander是一款基于Web的Redis管理工具,适合喜欢浏览器管理方式的用户。
它可以运行在Node.js环境,也可以通过Docker部署。
例如使用Docker时,可以根据对应版本提供的配置方式运行Redis Commander,然后通过浏览器访问管理页面。
相比桌面客户端,Web管理工具更方便在服务器或者容器环境中部署,但生产环境使用时必须特别注意访问控制和身份认证。
十、Redis可视化工具如何选择
不同工具适合的场景有所不同。
如果追求功能完整、希望深入了解Redis生态,可以优先考虑RedisInsight。
如果主要用于Windows本地开发,希望快速查看Key和修改测试数据,可以选择Another Redis Desktop Manager等桌面客户端。
如果需要通过浏览器访问Redis管理界面,则可以考虑Redis Commander等Web工具。
无论使用哪一种工具,都不建议直接将生产Redis暴露给公网管理界面。可视化工具本身也应该受到网络隔离、身份认证、访问控制等安全措施保护。
十一、Windows开发环境下Redis的推荐组合
对于大多数Windows后端开发者,可以采用下面的组合:
Windows
├── Docker Desktop
│ └── Redis Container
│ └── Port 6379
│
└── RedisInsight
└── 连接 127.0.0.1:6379这种组合具有几个明显优势。
首先,Redis运行环境独立,不会直接修改Windows系统环境。
其次,删除容器后可以快速重新创建Redis实例,方便测试不同版本和不同配置。
再次,RedisInsight可以直接查看Key和数据结构,开发调试效率较高。
如果项目采用Docker Compose,还可以进一步将Redis纳入项目基础设施配置。
例如:
services:
redis:
image: redis:7
container_name: redis
ports:
- "6379:6379"
volumes:
- redis-data:/data
command: redis-server --appendonly yes
volumes:
redis-data:进入项目目录后执行:
docker compose up -d查看服务:
docker compose ps停止服务:
docker compose down这种方式特别适合需要反复创建和销毁开发环境的项目。
十二、Windows使用Redis时的安全注意事项
Redis默认设计更偏向可信网络环境,因此部署时不能简单地认为“设置一个密码就安全”。
首先,不要将Redis的6379端口直接暴露到互联网。
其次,如果Redis只用于本机开发,可以尽量绑定本机地址。
再次,生产环境应采用合理的认证机制、网络隔离、防火墙策略和最小权限原则。
另外,还要避免在Git仓库中直接提交包含Redis密码的配置文件。例如下面这种配置就不适合直接提交到公开仓库:
redis:
host: 192.168.1.100