impossible de démarrer le serveur local mongodb

je suis nouveau à mongodb .. quand j'ai essayé d'exécuter mongodb local server avec la commande mongod , il n'a pas réussi à lancer cette erreur..

/usr/lib/mongodb/mongod --help for help and startup options
Sat Jun 25 09:38:51 MongoDB starting : pid=1782 port=27017 dbpath=/data/db/ 32-bit 

** NOTE: when using MongoDB 32 bit, you are limited to about 2 gigabytes of data
**       see http://blog.mongodb.org/post/137788967/32-bit-limitations

Sat Jun 25 09:38:51 db version v1.6.3, pdfile version 4.5
Sat Jun 25 09:38:51 git version: nogitversion
Sat Jun 25 09:38:51 sys info: Linux vernadsky 2.6.24-27-server #1 SMP Fri Mar 12 01:45:06 UTC 2010 i686 BOOST_LIB_VERSION=1_42
Sat Jun 25 09:38:51 [initandlisten] *** warning: spider monkey build without utf8 support.  consider rebuilding with utf8 support
Sat Jun 25 09:38:51 [initandlisten] waiting for connections on port 27017
Sat Jun 25 09:38:51 [initandlisten] listen(): bind() failed errno:98 Address already in use for socket: 0.0.0.0:27017
Sat Jun 25 09:38:51 [initandlisten]   addr already in use
Sat Jun 25 09:38:51 [initandlisten] now exiting
Sat Jun 25 09:38:51 dbexit: 

Sat Jun 25 09:38:51 [initandlisten] shutdown: going to close listening sockets...
Sat Jun 25 09:38:51 [initandlisten] shutdown: going to flush oplog...
Sat Jun 25 09:38:51 [initandlisten] shutdown: going to close sockets...
Sat Jun 25 09:38:51 [initandlisten] shutdown: waiting for fs preallocator...
Sat Jun 25 09:38:51 [initandlisten] shutdown: closing all files...
Sat Jun 25 09:38:51     closeAllFiles() finished

Sat Jun 25 09:38:51 [initandlisten] shutdown: removing fs lock...
Sat Jun 25 09:38:51 dbexit: really exiting now

j'ai essayé de supprimer le fichier mongod.lock ... J'ai couru mongod --repair .. J'ai aussi changé les permissions en fichier mongod.lock .

mais rien ne semble fonctionner.. il continue de s'afficher de la même erreur.. que dois-je faire.?

j'ai aussi installé la version 1.7.4.1 de git mais il montre nogitversion dans l'erreur..

144
demandé sur sakthig 2011-06-25 17:44:29

25 réponses

, Essayez:

sudo service mongod stop
sudo mongod

pour arrêter le service actif courant mongodb, vous permettant alors de commencer un nouveau

157
répondu morphy 2014-11-17 23:46:49

ne pas tuer le processus en utilisant le signal -9 car il causerait des dommages: http://www.mongodb.org/display/DOCS/Starting + et + arrêt+Mongo#StartingandStoppingMongo-SendingaUnixINTorTERMsignal 151940920"

utiliser sudo killall -15 mongod au lieu de

127
répondu R.S 2016-12-20 22:06:18

Andreas Jung:

"Sat Jun 25 09:38:51 [initandlisten] listen (): bind () a échoué errno: 98 Adresse déjà utilisée pour socket: 0.0.0.0: 27017

est de langue maternelle.

une autre instance de mongod exécute déjà et alloue le port par défaut de MongoDB qui est 27017.

soit tuer l'autre processus ou utiliser un port différent."

Dans ce cas, tapez la commande suivante

ps wuax | grep mongo

Vous devriez voir quelque chose qui ressemble à ce

User           31936   0.5 0.4 2719784 35624   ?? S     7:34pm   0:09.98 mongod
User           31945   0.0 0.0 2423368   184 s000 R+   8:24pm   0:00.00 grep mongo

entre maintenant la commande kill pour l'instance de mongod (31936 dans ce cas):

kill 31936
49
répondu Sacha Nacar 2014-10-02 00:21:17

Sat Jun 25 09: 38: 51 [initandlisten] listen (): bind () a échoué errno: 98 L'adresse à utiliser pour la prise: 0.0.0.0:27017

est de langue maternelle.

une autre instance de mongod exécute déjà et alloue le port par défaut de MongoDB qui est 27017.

soit tuer l'autre processus ou utiliser un port différent.

29
répondu Andreas Jung 2011-06-25 14:05:55

Découvrez de netstat quel processus est en cours d'exécution port mongodb (27017)

commande:

sudo netstat -tulpn | grep :27017

sortie sera:

tcp        0      0 0.0.0.0:27017           0.0.0.0:* 
LISTEN      6432/mongod

Dans mon cas "6432" est le pid, il peut être différent dans votre cas. Puis tuez ce processus en utilisant la commande suivante:

sudo kill <pid>

That's it!

25
répondu kabirkukreti 2016-03-27 06:33:56

vous avez déjà un processus en cours. Vous pouvez le tuer avec la commande :

killall mongod
20
répondu Younux 2015-08-15 16:00:50

utiliser:

sudo killall mongod

il arrêtera le serveur.

puis redémarrer mongod par:

sudo service mongod restart

ça devrait marcher.

17
répondu Asutosh Hota 2018-06-10 05:07:44

Vous voulez faire killall -15 mongod parce qu'il est toujours en cours d'exécution: Address already in use for socket: 0.0.0.0:27017 .

alors vous pouvez lancer mongod à nouveau.

13
répondu John Ottenlips 2017-12-21 18:40:32

essayez un port différent si vous ne pouvez pas trouver de processus en cours d'exécution ou de les tuer ne fonctionne pas. Par exemple, essayez 27018 parce que la valeur par défaut est 27017.

mongod  --port 27018

j'ai trouvé ça avec la commande, mongod --help

6
répondu Samantha 2015-12-06 23:26:36

Essayez de killall -15 mongod/ killall mongod Même après cela, si cela ne fonctionne pas, supprimez le dossier de stockage db en tapant les commandes suivantes: sudo rm-rf / data / db sudo mkdir / data / db sudo chmod 777 / data / db

6
répondu SU15 2016-04-27 06:28:57

je suggère d'utiliser à la place:

$sudo service mongodb stop

ça pourrait marcher.

6
répondu Nick Cuevas 2018-01-13 18:22:22

ouvrir le terminal et le type:

mkdir -p /data/db

puis entrer:

mongod
4
répondu Jhonatta 2015-10-10 23:17:54

OS X. Moniteur D'Activité , chercher mongod , de la croix . puis courir à nouveau mongod. le problème est Résolu.

4
répondu Hussain Chatha 2016-06-27 17:17:52

j'ai eu le même problème lorsque j'ai essayé d'ouvrir une nouvelle instance de mongod qui disait qu'elle fonctionnait déjà.

j'ai vérifié le docs et il a dit de taper

mongo
use admin
db.shutdownServer()
3
répondu goodbedford 2015-07-14 05:48:36

MongoDB incapable de démarrer est principalement due à l'arrêt impur. Pour y remédier, supprimer le mongod.fichier de verrouillage. Ce fichier est situé dans le dossier des données.

trouvez où se trouve votre dossier de données en regardant dans le mongodb.conf ou mongod.fichier conf. (Fichier Conf sous / etc sur les systèmes Linux.)

# Where and how to store data.
storage:
  dbPath: /var/lib/mongodb

par exemple, en utilisant la configuration ci-dessus, le fichier est at /var/lib/mongodb/mongod.verrouillage. Il suffit de l'enlever et de redémarrer mongodb.

3
répondu Praveen Kumar K S 2016-03-25 14:16:59

j'ai fait face au même problème. Bien que le service mongodb ne fonctionne pas, le journal de bord portait le message address already in use .

 $netstat -tulpn | grep :27017 

ne retourne rien

sur une analyse plus poussée a constaté que le problème était dû au fichier de verrouillage. Le service fonctionne correctement, après avoir supprimé le fichier lock et l'avoir redémarré.

$grep "dbpath" /etc/mongodb.conf

dbpath =/var/lib/mongodb

$ls /var/lib/mongodb/mongod.lock

$service mongod start
2
répondu Sushma Korati 2015-04-10 06:37:49

vérifier les journaux à /var/log/mongodb / mongod.journal et tenter d'en déduire l'erreur. Dans mon cas c'était

N'a pas réussi à débloquer socket file /tmp/mongodb-27017.sock errno:1 Opération non autorisée

supprimé/tmp / mongodb-27017.chaussette et cela a fonctionné.

2
répondu Ashish Tiwari 2015-11-20 10:54:06

essayer

/usr/lib/mongodb / mongod.exe -- dbpath c:data\db

-- dbpath (doit être suivi du chemin de votre db)

1
répondu user3176262 2014-03-24 11:52:11

il est possible que le serveur soit déjà en cours d'exécution. S'il vous plaît vérifier par la commande mongo fonctionne ou pas.

1
répondu Hemant Sharma 2015-01-12 09:55:04

il affiche l'erreur listen (): bind () errno:98 Adresse déjà utilisée pour socket: 0.0.0: 27017 c'est à dire 27017 adresse est déjà utilisé par un autre service. veuillez le vérifier en "netstat-apt / grep "27017"" commande

0
répondu user3273866 2014-02-05 06:23:00

(si vous utilisez linux,) si

mongod --shutdown --config=path/to/your/configFile.conf 

ou

mongod --repair --config=path/to/your/configFile.conf 

n'a pas corrigé le problème, déconnexion et re-login . Qui a résolu mon problème.

ou vous pouvez tuer le processus manuellement à partir du terminal, je suppose.

0
répondu Javad Sadeqzadeh 2014-05-30 16:04:23

il semble que la même erreur s'affiche dans les logs lorsque vous manquez le paramètre D'environnement LC_ALL. C'est déroutant, mais vous pouvez exécuter mongo client pour voir que c'est un problème.

0
répondu Karol Wojtaszek 2014-11-28 13:09:08

si vous utilisez mongo pour la première fois, vous pourriez vouloir définir le chemin en premier

mongod --dbpath <path to the directory>
0
répondu Sumeet Masih 2015-06-11 18:25:55

pour compléter dans Windows :

par exemple mongoDB version 3.6 est installé, et le chemin d'installation de MongoDB est "D:\Program Files \ MongoDB".

créer un dossier D:\mongodb\logs, puis Créer fichier mongodb.connectez-vous dans ce dossier.

lancer cmd.exe as administrateur ,

D:\Program Files\MongoDB\Server.6\bin>taskkill /F /IM mongod.exe
D:\Program Files\MongoDB\Server.6\bin>mongod.exe --logpath D:\mongodb\logs\mongodb.log --logappend --dbpath D:\mongodb\data --directoryperdb --serviceName MongoDB --remove
D:\Program Files\MongoDB\Server.6\bin>mongod --logpath "D:\mongodb\logs\mongodb.log" --logappend --dbpath "D:\mongodb\data" --directoryperdb --serviceName "MongoDB" --serviceDisplayName "MongoDB" --install

supprimer ces deux fichiers mongod.lock et storage.bson sous le dossier "D:\mongodb\data".

tapez ensuite net start MongoDB dans le cmd en utilisant le privilège administrateur, le problème sera résolu.

0
répondu Bravo Yeung 2018-06-30 14:34:55

le processus de mise à mort n'a pas résolu mon problème. Mon mac s'était crashé et en redémarrant certains fichiers de verrouillage (mongod.de verrouillage, WiredTiger.lock) étaient présents dans le mongo dbPath. J'ai déplacé ces fichiers dans un autre dossier (je n'ai pas supprimé pour éviter plus de problèmes) et puis ça a fonctionné. Sur successul star, j'ai effacé les fichiers de verrouillage déplacés.

0
répondu Test Test 2018-07-13 15:46:21