2016-03-31 17 views
-1

ich beginne neues Projekt mit Flask Rahmen und mongodb.i script.py Datei von Maschine wird von anderen Maschine B und verbindet Python und mongodb mit IP installiert A über seine IP und mongodb ausführen Maschine B IP, aber es gibt folgendes.Connection refused in MongoDB

Fehler:

pymongo.errors.ServerSelectionTimeoutError: x.x.x.x:27017: [Errno 111] Connection refused 

Hier ist meine Verbindung Code:

from flask import Flask 
from pymongo import MongoClient 

client = MongoClient("x.x.x.x", 27017) 

, wenn ich mit localhost seine Arbeit richtig, aber ich muss mit IP verbinden.

Antwort

1

Die Pakete für mongodb in vielen Linux-Distributionen sind standardmäßig so konfiguriert, dass sie nur die Netzwerkschnittstelle des lokalen Hosts abhören.

Wenn Sie mongod auf Maschine B starten, stellen Sie sicher, dass sie explizit an die öffentliche IP und den Port gebunden ist, indem Sie sie mit mongod --bind_ip x.x.x.x starten oder die Zeile bind_ip: 127.0.0.1 in /etc/mongod.conf entfernen.

Nur eine Hands-up: Sie sollten besser sicherstellen, dass die Authentifizierung aktiviert ist, bevor Sie dies tun, oder Sie werden bald fragen this question.

Verwandte Themen