这必须是一些错误的配置
我在localhost上安装了redis。
尝试通过Rails控制台连接到它时
Redis.new(:host => 'localhost', :port => 6379)
我无法发送命令而且
Redis::CommandError: ERR Client sent AUTH, but no password is set
我不记得设置密码,也不知道在哪里设置密码
如果我使用不同的URL(如rediscloud或redistogo),我可以发送命令(按照设置密码)
根据我的理解,错误说我正在发送密码,但redis没有密码。但是,正如您所看到的,我没有设置任何密码..
有没有办法调试这个?
答案 0 :(得分:3)
您可以使用MONITOR命令从Redis端调试客户端的通信。 MONITOR提供了Redis处理的命令流,因此如果您的Ruby客户端发出问题并且未被调用AUTH,您将能够在那里捕获它。
答案 1 :(得分:1)
我遇到了同样的问题,我正在尝试连接而没有在radis服务器上设置密码而我的代码将传递发送为空
编辑redis.conf并设置密码修复
requirepass pass_here
答案 2 :(得分:0)
遵循以下步骤(redis.conf的位置可以不同):
vi /usr/local/etc/redis.conf
取消注释:
# requirepass foobar
停止并开始Redis:
brew services stop redis
brew services start redis
来自redis-cli:
AUTH foobar
CONFIG SET requirepass "foobar"
全部完成