wake-up-neo.net

Es kann keine Verbindung zu MongoDB hergestellt werden

Ich habe gerade MongoDB installiert (Standard-Ubuntu-Build, nicht der neueste Stable) und aus irgendeinem Grund kann ich keine Verbindung herstellen:

Mon Feb  6 03:11:22 Error: couldn't connect to server 127.0.0.1 Shell/mongo.js:79
exception: connect failed

Jetzt ist mein Rechner nicht 127.x.x.1, sondern aus irgendeinem Grund x.x.x.2 (Aber ich habe meine Konfiguration geändert, um an diese Adresse zu binden, und habe auch versucht, an meine öffentliche IP-Adresse zu binden, die keinen Erfolg brachte.

Config:

# mongodb.conf

# Where to store the data.

# Note: if you run mongodb as a non-root user (recommended) you may
# need to create and set permissions for this directory manually,
# e.g., if the parent directory isn't mutable by the mongodb user.
dbpath=/var/lib/mongodb

#where to log
logpath=/var/log/mongodb/mongodb.log

logappend=true

bind_ip = 199.21.114.XX
port = 27017

Ich habe die Protokolle geprüft und es werden nur die Startinformationen angezeigt. 

Ich habe auch überprüft, dass der Deamon auch läuft, und es ist - ich habe sogar versucht, es manuell mit einem --fork auszuführen.

Hat jemand das schon mal gesehen? Oder irgendwelche Vorschläge?

Vielen Dank

AKTUALISIEREN:

Nach einem Neustart - hier sind die Protokolle:

** WARNING: You are running in OpenVZ. This is known to be broken!!!

Tue Feb  7 19:43:32 [initandlisten] db version v1.8.2, pdfile version 4.5
Tue Feb  7 19:43:32 [initandlisten] git version: nogitversion
Tue Feb  7 19:43:32 [initandlisten] build sys info: Linux allspice 2.6.24-28-se$
Tue Feb  7 19:43:32 [initandlisten] *** warning: spider monkey build without ut$
Tue Feb  7 19:43:32 [initandlisten] waiting for connections on port 27017
Tue Feb  7 19:43:32 [websvr] web admin interface listening on port 28017
21
Stuart.Sklinar

Sie müssen die IP-Adresse (199.21.114.XX) angeben, indem Sie mongo 199.21.114.XX ausführen.

Andernfalls sollten Sie die Einstellung bind_ip in Ihrer Konfigurationsdatei entfernen, wenn Sie auch localhost abhören möchten.

Update Überprüfen Sie Ihre Firewall-Konfiguration. Da Sie eine Verbindung mit der externen IP-Adresse herstellen, kann diese so konfiguriert werden, dass sie sogar von der lokalen Box blockiert wird.

14
Eve Freeman

Ich habe dieses Problem gelöst, indem ich die folgende Zeile in meiner /etc/mongod.conf-Datei auskommentierte.

# Listen to local interface only. Comment out to listen on all interfaces. 
#bind_ip = 127.0.0.1

Sie müssen diese Konfigurationsänderung mit einem Neustart des Mongod-Prozesses durchführen.

Sudo service mongod restart
25
Jeremy White
Sudo rm /var/lib/mongodb/mongod.lock
9
andyshi

Ich hatte das gleiche Problem nur wegen des dummen Fehlers.

entfernen Sie zuerst die Mongodb-Datei, die in Ordnung ist

rm -rf /tmp/mongodb-27017.sock

wo ich in der /etc/mongod.conf einen Fehler gemacht habe

# network interfaces
net:
  port: 27017
 #bindIp: 127.0.0.1
bindIp: privateIp

anstatt 

net:
  port: 27017
  bindIp: 10.1.2.4

um alle verfügbaren ips anzuhören

bindIp: [127.0.0.1,10.128.0.2]

starten Sie den Mongodb neu

Sudo service mongod start

hoffentlich hilft diese Antwort für jemanden

3
Amit Dubey

Wenn Sie den Befehl mongo console ausführen, wird standardmäßig nach mongodb auf Ihrem localhost gesucht, daher die 127.0.0.1-IP, die Ihr lokaler Loopback ist. Die Standardkonfiguration für mongod sollte auch auf localhost verfügbar sein. Es ist besser, es auf diese Weise für den Anfang zu tun, es sei denn, Sie haben auth eingeschaltet. Stellen Sie sicher, dass auth aktiviert ist oder Ihre Datenbank auf Ihrer öffentlichen IP-Adresse offen ausgeführt wird.

Wenn Sie eine Verbindung zu einem anderen Host als localhost oder zu Ihrer Standardkonfiguration herstellen möchten, müssen Sie Folgendes tun:

mongo <Host>
2
jdi

in /etc/mongod.conf

Ich habe mich verändert, 

bindIp: 127.0.0.1

zu 

bindIp: 0.0.0.0

das sind alle Ports. Ja, ich weiß, dass es riskant ist, aber ich arbeite in einem internen Netzwerk.

BTW, das #bindIp: 127.0.0.1 auskommentierte, funktionierte NICHT für mich und lief unter Ubuntu 18.

1
reselbob

folgende Schritte können Ihnen helfen:

  1. terminal öffnen und "Sudo rm /var/lib/mongodb/mongod.lock" ausführen
  2. jetzt ausführen " Sudo mongod --repair "
  3. jetzt "Sudo start mongodb"
  4. jetzt einfach den Status des Mongodb-Status überprüfen "Sudo-Status Mongodb"

5 schließlich rufen Sie einfach den Befehl "mongo" auf.

1
rahul sharma

Eine andere Möglichkeit ist das Hinzufügen der Mongod-Option param bind_ip

mongod -–help

--bind_ip Eine durch Kommas getrennte Liste der IP-Adressen in aufhören - localhost standardmäßig

--bind_ip_all bindet an alle IP-Adressen

mongod --fork --logpath /var/log/mongodb.log --dbpath /data/db --bind_ip 0.0.0.0
0
rakeshz