2010-01-31 11 views
13

Ich wollte nur Mongo-DB betrachten. Aber ich bringe es einfach nicht zum Laufen. Ich habe es mit PECL installiert und mein phpinfo() sagt mir, dass die Erweiterung geladen wird, aber wenn ich versuche, eine Verbindung zu bekommen mitKonnte keine Verbindung zu MongoDB durch PHP

$mongo = new Mongo();

ich dieses:

Fatal error: Uncaught exception 'MongoConnectionException' with message ': Transport endpoint is not connected'

Jedes haben die gleiches Problem? ... oder irgendeine Idee dazu?

+0

Welche OS verwenden Sie? Können Sie mit dem mongo-Befehlszeilenclient (auf demselben Computer) eine Verbindung zum Server herstellen? – VolkerK

+0

Ich kann auch nicht mit mongodb verbinden, aber der Fehler ist dies: Klasse 'Mongo' nicht gefunden. Hast du eine Idee, wie das zu beheben ist? Vielen Dank. – unpangloss

Antwort

17

Bitte nehmen Sie nicht den falschen Weg, aber haben Sie tatsächlich den Server laufen? Es sieht nur so aus, als ob Ihr Fehler mit einem Verbindungsfehler zusammenhängt und Sie den Server nicht erwähnt haben oder wo er sich befindet (localhost am Standardport)

+3

Schande über mich !!! :-) Genau das war mein Problem. Jedenfalls dachte ich, die PHP-Extension würde den Daemon automatisch starten, und darüber habe ich noch nicht einmal nachgedacht. Danke für Ihren Beitrag! –

2

überprüfen Sie, ob der Server läuft oder nicht ..

/etc/init.d/mongodb starten

dann gehen

root @ Kannan-desktop: ~ # mongo MongoDB Shell-Version: 1.6.3 Anschluss an: Test >

8

jede Serverstartmethode, wie "/etc/init.d/mongodb start" oder "service start mongodb", schlägt fehl, wenn eine veraltete Sperrdatei noch existiert. In Ubuntu/Debian ist dies /var/lib/mongodb/mongod.lock. Suche dies und delta es, wenn es existiert und scheint ein alter zu sein.

+0

das löste mein Problem damit ... Danke !!! – ftrotter

0

erste Änderung der Standard db Pfad durch Befehl folgende

sudo $ mkdir -p/data/db/

$ sudo chown id -u/data/db

und dann die letzter Befehl ist ..

$ mongod --journal

nicht schließen Terminal, bis Sie mit mongoDB

arbeiten Es funktioniert für mich ...

1

Vergessen Sie nicht, die IP in Ihrem mongod.conf zu ändern, wenn es sich um eine neue Installation ist.

0

nur mongod in Ihrem Terminal schreiben und wird gut funktionieren