Połączenie Redis z 127.0.0.1:6379 nie powiodło się - połącz ECONNREFUSED

138

Pracując z node.js przez expressjs
, próbuję zapisać konto do sesji. Więc próbuję przetestować sesję z kodem w expressjs

var RedisStore = require('connect-redis')(express);
app.use(express.bodyParser());
app.use(express.cookieParser());
app.use(express.session({ secret: "keyboard cat", store: new RedisStore }));

ale mam błąd Redis connection to 127.0.0.1:6379 failed - connect ECONNREFUSED.
Pomóż mi rozwiązać ten problem

Huy Tran
źródło
3
Czy Redis działa? Czy możesz się z nim połączyć w inny sposób, np. Redis-cli?
smutny gość
3
Dziękuję, ponieważ serwer redis nie działa. Instaluję serwer redis zgodnie z tym samouczkiem
Huy Tran
Powinieneś zainstalować serwer Redis na swoim komputerze i uruchomić go. Nie wiem, dlaczego autor nie wspomniał o tej ważnej rzeczy w instrukcji!
Emad Aghayi
2
Jak dodać serwer redis dla mojej aplikacji Node Heroku? Mam też ten sam błąd.
amar ghodke

Odpowiedzi:

228

Po zainstalowaniu redis wpisz z terminala:

redis-server

i będziesz mieć uruchomiony Redis

na barana
źródło
3
Dla mnie powinienem określić conf, więc wpisuję >> (sudo) redis-server /etc/redis/redis.conf
Romans 8.38-39
4
Dziękuję Ci. Głupie, jak w samouczku nigdy nie wspomnieli, jak uruchomić serwer redis!
Codious-JR
8
redis-server --daemonize yesdo działania w tle
Morteza Ziyae
64

Rozwiązuję ten problem w następujący sposób:

sudo apt-get install redis-server

następnie uruchom polecenie, aby potwierdzić, że wszystko w porządku:

sudo service redis-server status

Wynik będzie następujący: redis-server is running- to znaczy, że problem został rozwiązany.

VK
źródło
1
ten błąd został naprawiony, ale teraz pojawia się nowy błąd, np. „Błąd: ERR zła liczba argumentów dla polecenia 'set'”
vinet
1
Dzięki! rozwiązało to problem, wystarczy mała uwaga na temat środowisk Linux / WSL po zainstalowaniu, ponownie uruchom polecenie redis-serverlub w razie potrzeby wprowadź przedrostek sudo. Jeśli wszystko pójdzie dobrze, zostanie wyświetlony komunikat cli redis-server. można również zweryfikować sudo service redis-server statuszgodnie z sugestią @author.
po prostu bądź dziwny
33

Najpierw zainstaluj redis w swoim systemie -

brew install redis

następnie uruchom serwer redis -

redis-server
Partha Roy
źródło
20

Jestem w systemie Windows i musiałem zainstalować Redis stąd, a następnie uruchomić redis-server.exe.

Od początku tego pytania SO .

Felix
źródło
13

Proste rozwiązanie:

uderz poniżej tylko raz, chwal i zrestartuj serwer

redis-server
Shashwat Gupta
źródło
4

Mam też ten sam problem, najpierw próbowałem zrestartować serwer redis, sudo service restartale problem nadal się utrzymywał. Następnie usunąłem redis-servergo sudo apt-get purge redis-serveri zainstalowałem ponownie, sudo apt-get install redis-servera następnie redis znów działał. Warto też rzucić okiem na znajdujący się tutaj dziennik redis/var/log/redis/redis-server.log

Sadegh
źródło
4

dla użytkowników systemu Windows możesz użyć chocolatey do zainstalowania Redis

choco install redis-64

następnie uruchom serwer z

C:\ProgramData\chocolatey\lib\redis-64\redis-server.exe
Barış Serkan AKIN
źródło
3

Użyłem ubuntu 12.04. Rozwiązałem ten problem, instalując redis-server

Instalacja serwera redis dla systemu Ubuntu 12.04

niektóre konfiguracje będą wymagały nowych uprawnień roota. Wymienione również podręczniki dla innych systemów operacyjnych

Dzięki

Paing Soe Thaw
źródło
3

Korzystasz z systemu Windows 10? Przejdź tutaj: https://docs.microsoft.com/en-us/windows/wsl/wsl2-install

Następnie uruchomić...

    $ wget https://github.com/antirez/redis/archive/5.0.5.tar.gz <- change this to whatever Redis version you want (https://github.com/antirez/redis/releases)
    $ tar xzf redis-5.0.5.tar.gz
    $ cd redis-5.0.5
    $ make
dekoder7283
źródło
1

W przypadku platformy Windows należy sprawdzić, czy redis-serverdziała na podanym IP: porcie. konfigurację Redis można znaleźć w katalogu instalacyjnym /conf/redis.conf. domyślnie klient akceptuje 127.0.0.1:6379.

agpt
źródło
1

Jestem na MBP i szczegółowo zainstaluj redis, mój problem został rozwiązany.Poprawiono pobieranie, rozpakowywanie i kompilowanie Redis za pomocą:

$ wget http://download.redis.io/releases/redis-3.0.2.tar.gz

$ tar xzf redis-3.0.2.tar.gz

$ cd redis-3.0.2

$ make

Skompilowane pliki binarne są dostępne w katalogu src.

Uruchom Redis z:

$ src/redis-server 
Halilertekin
źródło
1

Twoje połączenie z redis nie działa. Spróbuj ponownie uruchomić serwer redis, a następnie ponownie uruchom klienta, uruchamiając te 3 polecenia:

sudo service redis-server restart
redis-server
redis-cli
Balakumaran
źródło
3
Proszę wyjaśnij swoją odpowiedź. Obecnie jest postrzegany jako post niskiej jakości. Dzięki!
Rezygnacja
mam ten błąd w ubuntu ... rozwiąż za pomocą tych poleceń ... teraz działa dobrze .....
Balakumaran
1

Myślę, że może zainstalowałeś redis przez kod źródłowy.Jeśli potrzebujesz zlokalizować redis-source-code-path / utils i uruchomić sudo install_server.shpolecenie. Następnie upewnij się, że redis-server działa jako usługa dla twojego systemu sudo service redis-server status

PS: oparty na Debianie / Ubuntu

sudoz
źródło
1

W przypadku Ubuntu błąd jest spowodowany brakiem konfiguracji serwera redis. Zainstaluj ponownie serwer redis, a następnie sprawdź stan.

Jeśli nie ma błędu, zostanie wyświetlony następujący komunikat: -

● redis-server.service - Zaawansowany magazyn wartości kluczy Załadowano: załadowano (/lib/systemd/system/redis-server.service; włączone; ustawienie dostawcy: włączone) Aktywne: aktywne (działa) od śr. 17.01.2018 20 : 07: 27 IST; 16 s temu Dokumenty: http://redis.io/documentation , man: redis-server (1) Główny PID: 4327 (redis-server) CGroup: /system.slice/redis-server.service └─4327 / usr / bin / redis-server 127.0.0.1:6379

Yadnesh Sawant
źródło
1

Najpierw musisz zainstalować serwer redis;

Możesz zainstalować serwer Redis na komputerze Mac, wykonując następujące czynności -

  $ curl -O http://download.redis.io/redis-stable.tar.gz
  $ tar xzvf redis-stable.tar.gz
  $ cd redis-stable
  $ make
  $ make test
  $ sudo make install
  $ redis-server

Powodzenia.

Saiful Islam Sajib
źródło
Uwaga: to zajmie trochę czasu. Jeśli masz menedżera zależności (napar lub inny), pozwoli to zaoszczędzić czas.
lukas_o
0

Miałem ten problem na Ubuntu 18.x, ale mój problem polegał na tym, że mój serwer redis działał na 127.0.0.1, ale okazało się, że muszę go uruchomić na moim adresie IP xxx.xx.xx.xx

Wszedłem do mojej maszyny Ubuntu i wykonałem następujące czynności.

cd /etc/redis/

sudo vim redis.conf

Potem zredagowałem tę część.

################################## NETWORK #####################################

# By default, if no "bind" configuration directive is specified, Redis listens
# for connections from all the network interfaces available on the server.
# It is possible to listen to just one or multiple selected interfaces using
# the "bind" configuration directive, followed by one or more IP addresses.
#
# Examples:
#
# bind 192.168.1.100 10.0.0.1
# bind 127.0.0.1 ::1
#
# ~~~ WARNING ~~~ If the computer running Redis is directly exposed to the
# internet, binding to all the interfaces is dangerous and will expose the
# instance to everybody on the internet. So by default we uncomment the
# following bind directive, that will force Redis to listen only into
# the IPv4 loopback interface address (this means Redis will be able to
# accept connections only from clients running into the same computer it
# is running).le to listen to just one or multiple selected interfaces using
#
# IF YOU ARE SURE YOU WANT YOUR INSTANCE TO LISTEN TO ALL THE INTERFACES
# JUST COMMENT THE FOLLOWING LINE.
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# bind 127.0.0.1 ::1 10.0.0.1
bind 127.0.0.1 ::1 # <<-------- change this to what your iP address is something like (bind 192.168.2.2)

Zapisz to, a następnie uruchom ponownie serwer redis.

sudo service redis-server restart lub po prostu biegnij redis-server

haron68
źródło
-5

Spróbuj zaktualizować swój węzeł do najnowszej wersji.

sudo npm cache clean -f
sudo npm install -g n
sudo n stable

wersja 0.4 może nie działać poprawnie.

ysk
źródło