文章目录
项目中要用到redis。本地环境需要自己搞个redis,踩坑之路开始。
开始使用
有32位的,有64位的用哪个?
其实都一样。就用64位的吧。
双击redis-server.exe ,启动成功。
双击redis-cli.exe,连接成功。
set two guanyu;
keys * ; 显示正确,成功。
项目是有密码的,修改redis.conf :
requirepass 1234
然后修改项目中的redis地址为localhost,密码为1234,重新启动,报错了:
Could not get a resource from the pool
怪了,难道是密码不对,仔细查看,就是这个密码啊?
要修改 #bind 127.0.0.1么 其实没必要
解决方案
密码设置了但是无效
用命令试下:
redis-cli # 连接
keys * # 查看所有
期待的效果:
可以连接
设置密码的情况下,keys * 是无法看数据的,需要先auth 1234
实际效果:
可以连接
keys * 居然可以看到数据了,说明密码无效
再次确认下密码:
config get requirepass
# 结果
(1) "requirespass"
(2) ""
密码为"",这说明确实没有设置密码,为什么呢?
redis-server启动方式不对
仔细看发现server窗口内容:
no config file specified,using the default config. in order to specify a config file use redis-server.exe /path/to/redis.conf
意思很明白: 没有指定配置文件,使用默认配置。 如果要指定配置文件,使用
redis-server redis.conf 命令。
原来如此,指定文件启动:
redis-server redis.conf
版本问题
启动项目试试,这下应该ok了把。要是世界这么简单就好了,结果还是报错:
ERR Unsupported CONFIG parameter: notify-keyspace-events
百度一下,说是版本问题。
查看reids目录下的 00-RELEASENOTES 文件,版本号为 :Redis 2.4 release notes
好吧,下载高版本的redis3.2,再试下,终于ok了。
总结
1、redis.conf 配置 requirepass 1234
2、指定配置文件启动server, redis-server redis.conf
3、cli端 config get requirepass 查看密码是否设置成功
4、使用高级的版本
其他
redis.windows-service.conf 和redis.windows.conf
有人问用哪个?
其实上文已经说的明白,用哪个都行,在命令行后跟配置文件即可。
redis3.2网盘地址
解压版:
链接:https://pan.baidu.com/s/1uBdlf9fBR5s2wpNNNM-Dew
提取码:m7v3
msi安装版:
链接:https://pan.baidu.com/s/1q_45_7vofBiTnZuOhty3Yw
提取码:7et4