Wenn ich Mongodb in meinem Ubuntu einrichte, versuche ich: ./mongo zeigt es diesen Fehler:
couldn't connect to server 127.0.0.1 shell/mongo.js
Was kann ich also tun ,
Vielen Dank
mongod
zuerst lief
Wenn ich Mongodb in meinem Ubuntu einrichte, versuche ich: ./mongo zeigt es diesen Fehler:
couldn't connect to server 127.0.0.1 shell/mongo.js
Was kann ich also tun ,
Vielen Dank
mongod
zuerst lief
Antworten:
sudo rm /var/lib/mongodb/mongod.lock
sudo -u mongodb mongod -f /etc/mongodb.conf --repair
Bitte beachten Sie Folgendes:
sudo rm /var/lib/mongodb/mongod.lock
sudo -u mongodb mongod -f /etc/mongodb.conf --repair
sudo service mongodb start
Hier ist alles, manchmal dauert es eine Weile, bis Mongo nach diesen Operationen gestartet ist.
Mon Aug 22 11:28:17.919 Can't specify both --journal and --repair options.
Ich versuche $ mongod laufen zu lassen
Wenn Sie einen Fehler wie z
MongoDB shell version: 2.0.5
connecting to: test
Fri Jun 1 11:20:33 Error: couldn't connect to server 127.0.0.1 shell/mongo.js:84
exception: connect failed
hisham-agil:~ hisham$ mongod
mongod --help for help and startup options
Fri Jun 1 11:24:47 [initandlisten] MongoDB starting : pid=53452 port=27017 dbpath=/data/db/ 64-bit host=hisham-agil.local
Fri Jun 1 11:24:47 [initandlisten] db version v2.0.5, pdfile version 4.5
Fri Jun 1 11:24:47 [initandlisten] git version: nogitversion
Fri Jun 1 11:24:47 [initandlisten] build info: Darwin gamma.local 11.3.0 Darwin Kernel Version 11.3.0: Thu Jan 12 18:48:32 PST 2012; root:xnu-1699.24.23~1/RELEASE_I386 i386 BOOST_LIB_VERSION=1_49
Fri Jun 1 11:24:47 [initandlisten] options: {}
Fri Jun 1 11:24:47 [initandlisten] exception in initAndListen: 10296 dbpath (/data/db/) does not exist, terminating
Fri Jun 1 11:24:47 dbexit:
Fri Jun 1 11:24:47 [initandlisten] shutdown: going to close listening sockets...
Fri Jun 1 11:24:47 [initandlisten] shutdown: going to flush diaglog...
Fri Jun 1 11:24:47 [initandlisten] shutdown: going to close sockets...
Fri Jun 1 11:24:47 [initandlisten] shutdown: waiting for fs preallocator...
Fri Jun 1 11:24:47 [initandlisten] shutdown: lock for final commit...
Fri Jun 1 11:24:47 [initandlisten] shutdown: final commit...
Fri Jun 1 11:24:47 [initandlisten] shutdown: closing all files...
Fri Jun 1 11:24:47 [initandlisten] closeAllFiles() finished
Fri Jun 1 11:24:47 dbexit: really exiting now
Dann ist ein grundlegender Startfehler aufgetreten, der ziemlich häufig auftritt.
Standardmäßig versucht mongod, / data / db für seine Datenbankdateien zu verwenden, die in diesem Fall nicht vorhanden sind.
Du kannst nicht anfangen
mongo
bis du fertig bist
mongod.
Versuchen Sie, diese Verzeichnisse zu erstellen, und stellen Sie sicher, dass sie von demselben Benutzer geschrieben werden können, der den Mongod-Prozess ausführt.
** Siehe ähnliche Frage - Fehlermeldung "Fehler: Verbindung zum Server 127.0.0.1 konnte nicht hergestellt werden - shell / mongo.js" und beim Versuch, mongodb auf einem Mac OSX Lion auszuführen
Dies ist eigentlich kein Fehler ... Was hier passiert, ist, dass Mongo zum Ausführen des lokalen Datenbankservers auf einen Dämon angewiesen ist. Um den Mongo-Server in Ihrer Shell zu "starten " , müssen Sie den Mongo-Dienst starten zuerst.
Für Fedora Linux (die von mir verwendete Distribution ) müssen Sie folgende Befehle ausführen:
1 sudo service mongod start
2 mongo
Und da hast du es! Der Server wird ausgeführt. Wenn der Mongo-Dienst beim Systemstart gestartet werden soll, müssen Sie Folgendes ausführen:
sudo chkconfig --levels 235 mongod on
Und das ist alles! Wenn Sie das tun, müssen Sie jetzt in der Shell nur noch mongo eingeben , um den Server zu starten, aber das ist so ziemlich alles. Das Problem ist, dass Sie zuerst den SERVICE und dann den SERVER starten müssen :)
PS Die Befehle, die ich gepostet habe, funktionieren möglicherweise auch in anderen Linux-Distributionen, nicht nur in Fedora ... Falls dies nicht der Fall ist, müssen Sie je nach verwendeter Distribution möglicherweise einige Wörter anpassen;)
sudo service mongodb start
Ich habe das gleiche Problem, als ich versuchte, Mongo zu installieren. Ich habe Fehler als,
Error
"Error: couldn't connect to server 127.0.0.1 shell/mongo.js:84"
Lösung:
Installieren Sie mongod zuerst mit:
sudo apt-get install mongodb-server
Geben Sie dann ein
mongod --dbpath /mongo/db
Dann
sudo rm /var/lib/mongodb/mongod.lock
Dann
sudo -u mongodb mongod -f /etc/mongodb.conf --repair
Danke
Sie müssen die Sperrdatei löschen mongod.lock
oder /var/lib/mongodb/mongod.lock
auf ubuntu, dann müssen Sie laufen mongod.exe
oder service mongodb start
auf ubuntu zuerst, dann laufen mongo.exe
oder mongo
auf Ubuntu.
.exe
Dateien verwenden werden.
Entweder läuft Ihr Mongod nicht (überprüfen Sie dies mit dem Befehl "ps") oder es lauscht auf einer externen IP-Adresse und nicht auf localhost. Überprüfen Sie also zuerst die Prozessliste, ob 'mongod' ausgeführt wird. Wenn ja, überprüfen Sie mit "netstat -nap" den zugehörigen Port.
Natürlich können Sie mongod manuell auf der Konsole starten oder sogar in die mongod-Protokolldatei schauen (falls eine konfiguriert ist ... je nachdem, wie Sie mongod installiert haben).
Zuerst müssen Sie sicherstellen, dass alle Dateien und Verzeichnisse in Ihrem Ordner / var / lib / mongodb / (oder dem Ordner, auf den dbpath verweist) dem Benutzer mongodb und der Gruppe mongodb gehören.
cd /var/lib/mongodb/
sudo chown mongodb filename.*
sudo chgrp mongodb filename.*
sudo chown -R mongodb directory
sudo chgrp -R mongodb directory
(Ersetzen Sie Dateiname und Verzeichnis durch ihre jeweiligen Namen)
Dann können Sie die Sperre aufheben, die Datenbank reparieren und den Dämon neu starten, wie andere bereits erwähnte Personen:
sudo rm /var/lib/mongodb/mongod.lock
sudo -u mongodb mongod -f /etc/mongodb.conf --repair
sudo service mongodb start
sudo -u mongodb mongod -f /etc/mongod.conf --repair
unter Ubuntu 14.
Starten Sie zuerst Ihren Mongo-Server mit
Users-MacBook-Pro:csv1 Admin$ mongod
all output going to: /usr/local/var/log/mongodb/mongo.log
Öffnen Sie dann ein anderes Terminalfenster und öffnen Sie die Shell
Users-MacBook-Pro:csv1 Admin$ mongo
Überprüfen Sie auch, ob Ihre Root-Partition über genügend Speicherplatz verfügt, um mongod zu starten.
df -h /
Beim Start von Mongod sehen Sie Folgendes:
Mon Aug 12 17:02:59.159 [initandlisten] recover : no journal files present, no recovery needed
Mon Aug 12 17:02:59.159 [initandlisten]
Mon Aug 12 17:02:59.159 [initandlisten] ERROR: Insufficient free space for journal files
Mon Aug 12 17:02:59.159 [initandlisten] Please make at least 3379MB available in /var/lib/mongodb/journal or use --smallfiles
Mon Aug 12 17:02:59.159 [initandlisten]
Mon Aug 12 17:02:59.159 [initandlisten] exception in initAndListen: 15926 Insufficient free space for journals, terminating
Mon Aug 12 17:02:59.159 dbexit:
Mon Aug 12 17:02:59.159 [initandlisten] shutdown: going to close listening sockets...
Dies kann eine Kombination aus $ PATH und Berechtigungsproblem sein.
Versuchen Sie die folgenden Schritte:
Aktualisieren Sie Ihre $ PATH-Variable so, dass sie auf Ihre MongoDB-Bin-Datei verweist. In meinem Fall installiere Brew MongoDB in diesem Ordner:
/usr/local/Cellar/mongodb/2.4.6/
Gehen Sie wie folgt vor, um Ihre Variable $ PATH zu aktualisieren:
$ sudo vi /etc/paths
Drücken Sie dann 'i', um Text in Vi einzufügen, und hängen Sie den MongoDB-Pfad an das Ende der 'path'-Datei an und starten Sie das Terminal neu.
/usr/local/Cellar/mongodb/2.4.6/bin
Verwenden Sie 'Esc: w q', um den Vi-Editor zu speichern und zu verlassen.
Verwenden Sie echo, um Ihre Pfadvariable anzuzeigen:
$ echo $PATH
/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/Cellar/mongodb/2.4.6/bin
Versuchen Sie nun, die Mongo-Version zu überprüfen. Wenn Sie folgen, sind Sie auf dem richtigen Weg!
$ mongo --version
MongoDB shell version: 2.4.6
Jetzt müssen wir das Datenbankverzeichnis erstellen. Ich habe den in MongoDB-Dokumenten vorgeschlagenen Standardspeicherort '/ data / db' verwendet. Ich habe auch ein Protokollverzeichnis erstellt, um Berechtigungsprobleme zu vermeiden, während Mongo versucht, Protokolle zu erstellen. Ändern Sie den Besitzer und das wird den Job machen.
$ sudo mkdir /data/db
$ sudo mkdir /data/log
$ whoami
username
$ chown -R username /data
Jetzt erstellen wir eine Standardkonfigurationsdatei für MongoDB, die zum ersten Mal bereitgestellt wird, wenn wir den Befehl 'mongod' ausführen. Jetzt möchte ich auch darauf hinweisen, dass 'mongod' einen Dienst startet, der auf eingehende Datenverbindungen wartet. Dies ist ähnlich, wenn '$ service mysqld start' ausgeführt wird. Lassen Sie uns fortfahren und die Konfigurationsdatei erstellen. Bitte beachten Sie, dass ich eine sehr einfache Konfigurationsdatei erstellt habe. Sie können jedoch viele andere Variablen hinzufügen, um MongoDB zu konfigurieren. Dies ist das erste Mal, dass ich mit MongoDB spiele, also weiß ich genau so viel, wie ich in MongoDB-Dokumenten gelesen habe! Ich habe 'mongodb.conf' erstellt.
$ sudo vi /etc/mongodb.conf
Fügen Sie Folgendes hinzu:
fork = true
port = 27017
quiet = true
dbpath = /data/db
logpath = /data/log/mongod.log
logappend = true
journal = true
Beachten Sie, dass der Standardport für den MongoDB-Server 27017 ist. Verwenden Sie Ihren eigenen Pfad für den Datenbank- und Protokollpfad, den Sie in Schritt 5 erstellt haben. Vergessen Sie nicht, die conf-Datei zu schließen und zu speichern.
Jetzt können wir unseren MongoDB-Dienst starten. Öffnen Sie zwei Instanzen von Terminal. Geben Sie in Terminal 1 Folgendes ein:
$ sudo mongod -f /etc/mongodb.conf
about to fork child process, waiting until server is ready for connections.
forked process: 3516
all output going to: /data/log/mongod.log
child process started successfully, parent exiting
Wenn Sie die obige Meldung erhalten, wissen Sie, dass Sie Ihren Mongod-Dienst erfolgreich gestartet haben.
Um eine Verbindung herzustellen, geben Sie in Terminal 2 Folgendes ein:
$mongo test
MongoDB shell version: 2.4.6
connecting to: test
Server has startup warnings:
Tue Sep 3 16:55:43.527 [initandlisten]
Tue Sep 3 16:55:43.527 [initandlisten] ** WARNING: soft rlimits too low. Number of files is 256, should be at least 1000
>
Ignorieren Sie die Warnungen, aber Sie sind erfolgreich mit der 'Test'-Datenbank verbunden! Cool!
Das ist alles. Ich habe diese Lösung angewendet, als ich zum ersten Mal versuchte, eine Kopie von MongoDB auf meinem Mac zu installieren. Sehen Sie, ob dies auch Ihnen hilft.
Ausführliche Informationen finden Sie hier - http://arcanebytes.com/2013/09/03/mongodb-installation-on-mac-os-x/#comment-1036112094 .
Ich hoffe, es hilft!
Prost, Chinmay