Windows下安装并设置Redis

Redis对于Linux是官方支持的,安装和使用没有什么好说的,普通使用按照官方指导,5分钟以内就能搞定。详情请参考:

http://redis.io/download

但有时候又想在windows下折腾下redis,可以从redis下载页面看到如下提示(在页面中搜索 "windows"):

[plain] view plain copy

  1. Win64   Unofficial  The Redis project does not directly support Windows,   
  2.     however the Microsoft Open Tech group develops and maintains   
  3.     an Windows port targeting Win64.  

大意就是 Redis官方是不支持windows的,只是 Microsoft Open Tech group 在 GitHub上开发了一个Win64的版本,项目地址是:

https://github.com/MSOpenTech/redis

打开以后,可以直接使用浏览器下载,或者Git克隆。

可以在项目主页右边找到 zip包下载地址: https://github.com/MSOpenTech/redis/archive/2.8.zip

(注意: dist文件改变了下载地址: https://github.com/MSOpenTech/redis/releases )

在 Release 页面中,可以找到 msi 安装文件以及 .zip 文件(而且有3.0的beta版,请下拉查找)。

下载解压,没什么好说的,在解压后的bin目录下有以下这些文件:

[plain] view plain copy

  1. redis-benchmark.exe         #基准测试  
  2. redis-check-aof.exe         # aof  
  3. redis-check-dump.exe        # dump  
  4. redis-cli.exe               # 客户端  
  5. redis-server.exe            # 服务器  
  6. redis.windows.conf          # 配置文件  

当然,还有一个 RedisService.docx 文件,看似是一些启动和安装服务的说明文档,但是照着他的指示来,你就会死的很惨,莫名其妙的死了,不知道原因。

【换机器重新测试后已查明,如果不是Administrator用户,就会出各种问题,服务安装以后启动不了等等问题,应该可以修改服务的属性-->登录用户等选项来修正.】

【如果你安装的windows没有Administrator账户,请参考这篇文章:

Windows 7 启用超级管理员administrator账户的N种方法

 】

网上参考了一些资料,发觉可以使用,也就没有深究,直接拿来主义:

启动脚本如下:

[plain] view plain copy

  1. redis-server  redis.windows.conf  

可以将其保存为文件 startup.bat ; 下次就可以直接启动了。

但是在cmd之中执行这行命令之后报错:

[plain] view plain copy

  1. D:\Develop\redis-2.8.12>redis-server.exe redis.windows.conf  
  2. [7736] 10 Aug 21:39:42.974 #  
  3. The Windows version of Redis allocates a large memory mapped file for sharing  
  4. the heap with the forked process used in persistence operations. This file  
  5. will be created in the current working directory or the directory specified by  
  6. the 'dir' directive in the .conf file. Windows is reporting that there is  
  7. insufficient disk space available for this file (Windows error 0x70).  
  8. You may fix this problem by either reducing the size of the Redis heap with  
  9. the --maxheap flag, or by starting redis from a working directory with  
  10. sufficient space available for the Redis heap.  
  11. Please see the documentation included with the binary distributions for more  
  12. details on the --maxheap flag.  
  13. Redis can not continue. Exiting.  

根据提示,是 maxheap 标识有问题,打开配置文件 redis.windows.conf ,搜索 maxheap , 然后直接指定好内容即可.

[plain] view plain copy

  1. .......  
  2. #    
  3. # maxheap <bytes>  
  4. maxheap 1024000000  
  5. .......  

然后再次启动,OK,成功.

[plain] view plain copy

  1. D:\Develop\redis-2.8.12>redis-server  redis.windows.conf  
  2.                 _._  
  3.            _.-``__ ''-._  
  4.       _.-``    `.  `_.  ''-._           Redis 2.8.12 (00000000/0) 64 bit  
  5.   .-`` .-```.  ```\/    _.,_ ''-._  
  6.  (    '      ,       .-`  | `,    )     Running in stand alone mode  
  7.  |`-._`-...-` __...-.``-._|'` _.-'|     Port: 6379  
  8.  |    `-._   `._    /     _.-'    |     PID: 6736  
  9.   `-._    `-._  `-./  _.-'    _.-'  
  10.  |`-._`-._    `-.__.-'    _.-'_.-'|  
  11.  |    `-._`-._        _.-'_.-'    |           http://redis.io  
  12.   `-._    `-._`-.__.-'_.-'    _.-'  
  13.  |`-._`-._    `-.__.-'    _.-'_.-'|  
  14.  |    `-._`-._        _.-'_.-'    |  
  15.   `-._    `-._`-.__.-'_.-'    _.-'  
  16.       `-._    `-.__.-'    _.-'  
  17.           `-._        _.-'  
  18.               `-.__.-'  
  19. [6736] 10 Aug 22:01:22.247 # Server started, Redis version 2.8.12  
  20. [6736] 10 Aug 22:01:22.248 * The server is now ready to accept connections on port 6379  

然后可以使用自带的客户端工具进行测试。

双击打开 redis-cli.exe , 如果不报错,则连接上了本地服务器,然后测试,比如 set命令,get命令:

[plain] view plain copy

  1. 127.0.0.1:6379> set tiemao http://blog.csdn.net/renfufei  
  2. OK  
  3. 127.0.0.1:6379> get tiemao  
  4. "http://blog.csdn.net/renfufei"  
  5. 127.0.0.1:6379>  

这应该很好理解,连接上了本机的6379端口。

如果需要帮助,可以在 cli窗口中输入 help查看,例如:

[plain] view plain copy

  1. 127.0.0.1:6379> help  
  2. redis-cli 2.8.12  
  3. Type: "help @<group>" to get a list of commands in <group>  
  4.       "help <command>" for help on <command>  
  5.       "help <tab>" to get a list of possible help topics  
  6.       "quit" to exit  
  7. 127.0.0.1:6379> help @string

根据提示,可以输入 help 空格 然后敲tab键,可以像命令提示一样告诉你可以有哪些帮助分组,多敲几个 tab 试试? 备注说明:

1. 这个版本是Win64的,所以32位windows就不要折腾了。

2. 我的操作系统是Windows 7 64位旗舰版,运行内存16GB,用户不是Administrator,而是 hasee,所以设置了下 redis-server.exe 和redis-cli.exe 的属性中的兼容性权限(以管理员身份运行),如果你运行出错,可能需要设置一下这里。

3. 什么360啊,UAC啊,防火墙啊,该关的请关闭。。。

4. 如果有其他问题,欢迎留言或者评论, 这只是一个心血来潮时的折腾 接触了好久Redis但一直没在windows下使用,请轻拍。

附加几个 bat 批处理脚本,请根据需要灵活配置

service-install.bat

[plain] view plain copy

  1. redis-server.exe --service-install redis.windows.conf --loglevel verbose  

uninstall-service.bat

[plain] view plain copy

  1. redis-server --service-uninstall  

startup.bat

[plain] view plain copy

  1. redis-server.exe redis.windows.conf  

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏张善友的专栏

使用ProcDump工具解决Windows应用程序崩溃

ProcDump是一个可以用于诊断多种问题点的命令行工具。和Dr.Watson、ADPlus以及DebugDiag一样,ProcDump可以在不期望的情况或者异...

2555
来自专栏程序你好

.net程序源代码如何避免被反编译

922
来自专栏张善友的专栏

Windows PowerShell 工具

如果尚未开始使用 Windows PowerShell,很可能您很快就会用到它。Windows PowerShell 将成为 Windows Se...

2249
来自专栏雨过天晴

原 Ngrok搭建服务器

2.7K3
来自专栏数据之美

玩转 Linux 之:由 Nginx log rotation 聊聊 mv 的妙用

1、Nginx 下如何正确的做日志切分 今天发现有个 Nginx 日志 rotation 出来大小是 0,很奇怪,按公司的业务场景来说,这是不可能的。 瞅了...

23110
来自专栏FreeBuf

使用SCCM和Viewfinity进行提权实验

如今越来越多的公司开始限制用户以本地管理员的身份来运行软件,随之带来的问题是,如何允许用户执行某些管理行为,例如安装已批准的软件。市场上有一些工具旨在解决这个问...

1050
来自专栏张善友的专栏

Visual Studio Code v0.9.1 发布

微软的跨平台编辑器 Visual Studio Code v0.9.1 已经发布,官方博客上发布文章Visual Studio Code – October U...

1737
来自专栏Vamei实验室

树莓派:文本编辑器与文件

GNU nano是Unix系统下一款常用的文本编辑器,以简单易用著称。与之相比,功能更强大的Vi和Emacs编辑器,学习曲线比nano陡峭很多。由于nano对于...

2275
来自专栏架构师之路

一分钟了解nohup和&的功效

1234
来自专栏Jerry的SAP技术分享

找出OData service出错根源的小技巧

SAP的Fiori应用是通过OData和后台交互的。在使用Fiori应用时您可能会遇到这样的错误消息:

1939

扫码关注云+社区