2012-12-19 5 views
9

Ich versuche, mongodb mit Pymongo zu verbinden. Ich sehe zwei Klassen, um sich mit mongodb zu verbinden.pymongo: MongoClient oder Verbindung

MongoClient and Connection. 

Was ist der Unterschied zwischen diesen beiden Klassen?

Antwort

8

MongoClient ist die bevorzugte Methode zum Herstellen einer Verbindung zu einer Mongo-Instanz. Die Klasse Connection ist veraltet. In Bezug auf die Verwendung sind sie sich jedoch sehr ähnlich.

+2

Einige Beispielcode verwenden MongoClient wird nützlich. –

+0

Ich versuche, eine Verbindung mit ssl mongoDB mit MongoClient verbinden, es verbindet, aber warum es keine Verbindung mit Connection-Methode –

3

Verbindung wurde veraltet. Alle offiziellen MongoDB-Treiber haben ein neues Verhalten im abgesicherten Modus bei "true" (kein Feuer und Vergessen).

MongoClient muss anstelle von Connection verwendet werden.

UPDATE: Alle neuen Funktionen und Änderungen werden auf MongoClient, nicht auf Connection vorgenommen.

5

MongoClient und Connection sind ähnlich, aber MongoClient wurde eingeführt (seit mongodb ab 2.2+), um hauptsächlich WriteConcern und andere Funktionen zu unterstützen.

Connection wird abgeschrieben, also vermeiden Sie es in Zukunft.

Der erste Schritt beim Arbeiten mit PyMongo ist das Erstellen einer MongoClient für die laufende mongod-Instanz. Dies ist einfach:

>>> from pymongo import MongoClient 
>>> client = MongoClient() 

Der obige Code wird auf dem Standard-Host und Port verbinden. Wir können auch den Host und Port explizit angeben, wie folgt:

>>> client = MongoClient('localhost', 27017) 

Oder die MongoDB URI-Format verwenden:

>>> client = MongoClient('mongodb://localhost:27017/') 

Referenz: MongoClient Python Example

Verwandte Themen