dot Redis 8 来了——而且是开源的

了解更多

在 Windows 8.1(和以前的版本)上运行 Redis – 第三部分之二

为什么在 Windows 上使用 Redis?

越来越多的开发人员在 Windows 上编写代码,这已经不是什么秘密了。每年 Stack Overflow 都会分享其开发者调查,而且每年 Windows 都是最流行的开发操作系统,并且 Visual Studio 是最流行的 IDE。当然,有很多方法可以对数据进行切片,但足以说明阅读本文的很多人现在都在使用 Windows。然而,不明显的是如何在 Windows 上安装 Redis,以便您可以开发使用 Redis 的应用程序。即使您远程访问 Redis(例如:Redis Enterprise Cloud),您仍然需要一个为您的本地 Windows 机器编译的 Redis 客户端。目前,有一种方法可以在 Windows 8.1(和早期版本的 Windows)上以原生方式使用 Redis 进行开发,那就是使用 Redis 3.2.1 的不受支持的 Windows 端口。

在本“Windows 上的 Redis”系列文章的第一部分中,我解释了如何通过 Windows Subsystem for Linux (WSL) 在 Windows 10 上运行 Redis。在这篇文章中,我将解释如何在早期版本上运行 Redis。在以后的文章中,我将解释如何在 Docker 容器中运行 Redis。

适用于 Windows 的 Redis 3.2.1 端口

官方不支持 Windows 上的 Redis。但是,MSOpenTech 已将 3.2.1 版本的 Redis 移植到 Windows。它已经两年多历史了,并且有一些缺点,因此 redis.io 下载页面上的链接已被删除。也就是说,较新版本的 Redis 是向后兼容的,因此如果您不需要新命令,那么此 3.2.1 版本的 Redis 可能适用于您的开发目的。

注意:自 3.2.1 版本以来,已经进行了许多安全修复和其他改进,因此我强烈建议不要在生产环境中运行旧版本的 Redis。这篇博客文章希望您只想在开发人员机器上运行 Redis 以进行开发。与往常一样,您应该在一个非开放的、受信任的、位于防火墙后面的网络上开发您的代码。

下载、安装和运行适用于 Windows 的 Redis 3.2.1 端口

  1. 访问存档的 MSOpenTech Redis Github 存储库,网址为 https://github.com/MicrosoftArchive/redis/
  2. 向下滚动到“Redis on Windows”部分,然后单击 发布页面链接。
  3. 找到最新版本(目前为 3.2.100)
  4. 下载并运行 .msi 文件,然后按照安装向导的说明进行操作。接受向导的默认值,但请确保选中“将 Redis 安装文件夹添加到 Path 环境变量”复选框。
    选项 #2:如果您无法运行安装向导,请按照以下步骤通过 .zip 文件进行安装。(注意:您也可以下载分叉的 Redis 源代码并构建它以在您的 Windows 版本上运行,但本博文将不介绍这些步骤):
      1. 将 .zip 文件下载到您的硬盘驱动器。
      2. 将文件解压缩到任何位置,例如“C:Program FilesRedis”。
      3. 按照以下附加步骤完成 Redis 的安装(请注意,这些步骤适用于 Windows 7 Professional;其他版本可能需要不同的步骤)
        1. 将您的 Redis 文件夹的路径添加为 Windows“环境变量”。
          1. 打开您的“控制面板”应用程序并搜索“编辑系统管理变量”。
          2. 打开“环境变量”窗口。
          3. 在“用户变量”下,找到名为“Path”的变量,然后单击“编辑”。
          4. 将“C:Program FilesRedis”添加到变量值的末尾,然后单击“确定”。
          5. 如果 Path 变量不存在,请单击“新建”,添加“C:Program FilesRedis”,然后单击“确定”。
        2. 将 Redis 安装为 Windows 服务。
          1. 打开您的命令提示符(例如:cmd.exe)。
          2. 从您的 Redis 文件夹(例如:C:Program FilesRedis)运行以下命令:
            > redis-server --service-install
            

            注意:要卸载作为 Windows 服务的 Redis,请键入

            > redis-server --service-uninstall
  5. 要在 Windows 8.1(或以前的版本)上运行 Redis 3.2.1 端口
    1. 打开您的命令提示符(例如:cmd.exe)并键入:
      > redis-server --service-start
    2. Redis API 将创建一个默认 Redis,该 Redis 准备好接受端口 6379 上的连接。您现在可以使用 redis-cli.exe 文件连接到它。

      注意:要保存和停止 Redis 数据库,请键入
      > redis-server shutdown save

      注意:要关闭 Redis 服务器,请键入

      > redis-server --service-stop
  6. 保护您的 Redis
    1. 安全非常重要,尤其是在连接到 Internet 时。Redis 3.2 是 第一个默认解决安全问题的版本。此版本及其之后的版本在用户指定密码或 IP 地址之前都具有受保护模式。这意味着您只能使用 127.0.0.1 或 localhost 从您的本地机器访问您的 Redis。尽管如此,指定密码和您想要访问 Redis 的网络地址始终是一个好主意。
      • 密码:密码由系统管理员以明文形式在 redis.conf 文件中设置。打开该文件,取消注释 #,并将“mypassword”更改为非常强大且非常长的值。
        requirepass mypassword
      • 网络地址:也可以通过将以下行添加到您的 redis.conf 文件中,将 Redis 绑定到您的笔记本电脑:
        bind 127.0.0.1
    2. 您还应该阅读 redis.io 上的 安全页面,以确定适合您情况的正确安全配置。

连接到 Windows 版 Redis

  1. 打开您的命令提示符(例如:cmd.exe)
  2. 从您的 Redis 文件夹(例如:C:Program FilesRedis)运行以下命令:
    > redis-cli ping

    如果服务器正在运行,您将收到响应:“pong”。

  3. 如果您需要通过网络连接到 Redis,则必须键入主机名(或 IP 地址),例如:
    > redis-cli -h redis15.local.net -p 6739 -a mypassword ping  
    (or > redis-cli -h 123.456.789.012 -p 6739 -a mypassword ping)
  4. 您还可以指定密码,例如:
    > redis-cli -a mypassword ping 
  5. 为了节省键盘点击次数,您可以通过键入以下内容与 Redis 服务器建立持续会话:
    > redis-cli -a mypassword 
    

    现在您可以只键入您的命令,例如

    > ping
  6. 出于内存和安全原因,最好在不使用时关闭 Redis。要保存您的数据并停止 Redis,请键入:
    > redis-cli -a mypassword shutdown save

总结

现在您的开发机器上已经运行了 Redis,您将希望您的应用程序与 Redis 通信。请查看 redis.io 上的 Redis 客户端部分,以获取 Redis 客户端库的列表。特别是,请查看 C# 客户端 ServiceStack.Redis 和 StackExchange.Redis。