Redis 在 Windows 下的安装

注意

安装路径中不要有中文和空格。例如:C:\ProgramFilesD:\ProgramFiles

第 1 步:下载、解压

https://github.com/MicrosoftArchive/redis/releases/open in new window

解压压缩包到 D:\ProgramFiles

解压后会看到类似如下内容





redis无需安装版本 redis免安装版windows_redis无需安装版本


文件名

简要

redis-benchmark.exe

基准测试

redis-check-aof.exe

aof

redischeck-dump.exe

dump

redis-cli.exe

客户端

redis-server.exe

服务器

redis.windows.conf

配置文件

第 2 步:启动

在 REDIS_HOME 目录下打开一个命令行终端,执行如下命令:

redis-server.exe redis.windows.conf

# 简写。有些版本的 Windows 系统无法简写,原因不明。
redis-server.exe



redis无需安装版本 redis免安装版windows_数据库_02


当出现此界面的时候,说明启动成功,Redis 正监听端口 6379,等待客户端发起连接。

通过上述命令启动 redis-server 之后,执行启动命令的那个命令行窗口就一直是被占用着的。只要它一直是占用状态,Redis Server 就一直在运行。

第 3 步:连接到 Redis Server

进入 redis 的解压目录,打开一个命令行终端,执行如下命令:

redis-cli.exe



redis无需安装版本 redis免安装版windows_redis无需安装版本_03


其实本质上,redis-cli 的完整格式是:

redis-cli.exe -h <指定ip> -p <指定端口> -a <指定密码>

提示

你也可以使用其它的客户端连接 Redis Server 。

其它:关闭 Redis Server

提示

理论上来说,Redis Server 和 MySQL Server 一样,不会动不动就关闭的,它们都应该是「持续运行」,除非发生升级、维护、宕机等不可抗因素才会被关闭。

强行终止 Redis Server 进程可能会导致 redis 持久化数据丢失。正确停止 Redis 的方式应该是向 Redis 发送 SHUTDOWN 命令。

进入 redis 的解压目录,打开一个命令行终端,执行如下命令:

./redis-cli.exe -h 127.0.0.1 -p 6379 shutdown 

# 简写
./redis-cli.exe shutdown

其它:如何设置 Redis 密码 了解

默认连接 Redis 是不需要密码的,因为配置文件 redis.windows.conf

如有需要,打开 redis.window.conf 找到 # requirepass foobared( 这一行是注释 ),去掉注释符 #

requirepass 123456

关闭 redis 服务端,再重新启动。现在在客户端窗口第一次输入命令时,redis 会给出 (error) NOAUTH Authentication required. 提示,要求你提供密码,为此你必须使用 auth

127.0.0.1:6379> auth 123456
OK

或者在 redis-cli 连接的时候,就指定密码:redis-cli.exe -a 123456

其它:借助 WinSW 启停 Redis

提示

有一小部分同学操作完全正确,但是仍会注册失败。原因不明,暂时无解决方案。怀疑和 Windows 系统版本有关。

  • 第 1 步:下载 Windows Service Wrapper 工具
    WinSW github( .NET 4.6.1 版 )open in new window将下载好的 WinSW 放到 REDIS_HOME 目录下,并重命名。名字任意,例如:systemctl.exe 。
  • 第 2 步:为 WinSW 创建配置文件
    在 REDIS_HOME 下为 WinSW 创建配置文件( 配置文件与 WinSW 程序平级 )。配置文件为 .xml 文件,且名字必须与 WinSW 程序相同。例如:systemctl.xml ,与上面的 systemctl.exe 相呼应。
    systemctl.xml 配置文件内容如下:
<service>
  <id>redis-server</id>
  <name>Redis Server</name>
  <description>Redis Server</description>

  <executable>%BASE%\redis-server.exe</executable>
  <startargument>redis.windows.conf</startargument>

  <stopexecutable>%BASE%\redis-cli.exe</stopexecutable>
  <stopargument>shutdown</stopargument>

  <logpath>%BASE%\logs</logpath>
  <logmode>roll</logmode>
</service>

在上述的配置文件中,我们「告知」了 WinSW 以什么命令启停 Redis Server 。未来,我们不再亲自启停 Redis Server ,而是通过 WinSW 间接启停 Redis Server 。

  • 第 3 步:安装 Redis Server 服务
    在 REDIS_HOME 目录下打开 cmd 命令行执行如下命令:
# 安装服务。开机启动,当前未启动,重启后生效。
systemctl install

# 如果对「开机启动」有异议,可通过 Windows 的 sc 命令调整
sc config redis-server start= demand           # 手动启动
# sc config <服务名称> start= auto      # 开机启动,当前未启动,重启后生效
# sc config <服务名称> start= disabled  # 禁用

安装成功后,你可以在 Windows 系统的服务中看到 Redis Server 。


redis无需安装版本 redis免安装版windows_windows_04

install 的反向操作是 uninstall ,uninstall 之后在 Windows 服务中就看不到它了。

# uninstall 的前提是服务已停止
systemctl uninstall

注意,install 和 uninstall 的操作只用执行一次,在日常使用中并非反复执行( 也无必要 )。

  • 第 4 步:启动 Redis Server 服务
    提示
    你在 Windows 的 服务
# 查看状态
systemctl status

# 启动服务
systemctl start
  • 其它:停止 Redis Server 服务
# 查看状态
systemctl status

# 停止服务
systemctl stop