2014-10-14 4 views
9

Это должен быть какой-то неправильный CONFIGRedis :: CommandError: ERR Клиент послал AUTH, но пароль не установлен

Я установил Redis на локальном хосте.

При попытке подключиться к нему через консоль Rails

Redis.new(:host => 'localhost', :port => 6379) 

Я не могу отправлять команды и я получаю

Redis::CommandError: ERR Client sent AUTH, but no password is set 

Я не помню, установка пароля, и я не знаю, где чтобы узнать, был ли установлен пароль

Если я использую другой URL-адрес (например, rediscloud или redistogo), я могу отправить команды (с паролем, установленным по умолчанию)

Из того, что я понимаю, ошибка говорит, что я отправляю пароль, но redis не имеет пароля. Но, как вы можете видеть, я не устанавливаю никаких паролей.

Есть ли способ отладить это?

+4

Вы можете проверить, установлена ​​ли переменная среды REDIS_URL? Если это так, клиент Redis, который вы используете, может выбирать из него пароль. – soveran

+0

спасибо, это было именно так. Несмотря на то, что я явно объявляю хост и пароль, он берет пароль из redis_url, который я не использовал .. –

+0

good catch @soveran :) –

ответ

3

Вы можете отлаживать связь клиента со стороны Redis, используя команду MONITOR. MONITOR предоставляет поток команд, которые Redis обрабатывает, поэтому, если ваш клиент Ruby выдает и не имеет права AUTH, вы сможете его поймать.

+0

спасибо, я замечаю, что я отправляю пароль, но у меня нет этого пароля, установленного где угодно код .. :(даже используя простой irb и пытающийся отправить команду отправил бы этот пароль .. Возможно ли, что в прошлом я установил этот пароль, и он где-то где-то хранится? –

+0

Вы спасли мой день :) Спасибо. –

+0

Спасибо за верх, но счастливее, что это помогло вам :) –

1

я получил тот же вопрос, и это было то, что я пытаюсь подключиться, пока пароль не был установлен на Радис сервере и мой код отправлял пропуск утратившим

редактировать redis.conf и установка пароля исправить

requirepass pass_here 
Смежные вопросы