Je suis nouveau sur mongodb .. quand j'ai essayé d'exécuter le serveur local de mongodb avec la mongod
commande, il n'a pas pu s'exécuter et a jeté 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 mongod.lock
fichier ... J'ai couru mongod --repair
.. J'ai également changé les autorisations du mongod.lock
fichier.
mais rien ne semble fonctionner .. il continue d'afficher la même erreur .. que dois-je faire.?
J'ai également installé la version 1.7.4.1 de git mais il affiche nogitversion par erreur.
Réponses:
Essayer:
Pour arrêter le service mongodb actif actuel, vous permettant ensuite d'en démarrer un nouveau
la source
sudo service mongodb stop
a travaillé pour moi sur Ubuntu 14.10.brew services
. (via unix.stackexchange.com/questions/155715/… )Ne tuez pas le processus en utilisant le signal -9 car cela causerait des dommages: http://www.mongodb.org/display/DOCS/Starting+and+Stopping+Mongo#StartingandStoppingMongo-SendingaUnixINTorTERMsignal
Utilisez
sudo killall -15 mongod
plutôtla source
killall mongod
fait la même chose aussi. le-15
ditkillall
d'envoyer un signal SIGTERM, ce qu'il fait par défaut.Dans ce cas, tapez la commande suivante
Vous devriez voir quelque chose qui ressemble à ceci
Entrez maintenant la commande kill pour l'instance mongod (31936 dans ce cas):
la source
est auto-parlant.
Une autre instance de mongod est déjà en cours d'exécution et alloue le port par défaut de MongoDB qui est 27017.
Tuez l'autre processus ou utilisez un port différent.
la source
Découvrez sur netstat quel processus exécute le port mongodb (27017)
commander:
La sortie sera:
Dans mon cas, "6432" est le pid, il peut être différent dans votre cas. Puis tuez ce processus en utilisant la commande suivante:
C'est tout!
la source
Utilisation:
Cela arrêtera le serveur.
Puis redémarrez
mongod
par:ça devrait marcher.
la source
Vous avez déjà un processus en cours d'exécution. Vous pouvez le tuer avec la commande:
la source
Vous voulez faire
killall -15 mongod
parce qu'il est encore en cours d' exécution:Address already in use for socket: 0.0.0.0:27017
.Ensuite, vous pouvez courir à
mongod
nouveau.la source
killall mongod
?No matching processes belonging to you were found
Essayez un autre port si vous ne trouvez aucun processus en cours d'exécution ou si leur suppression ne fonctionne pas. Par exemple, essayez 27018 car la valeur par défaut est 27017.
J'ai découvert cela avec la commande,
mongod --help
la source
Je suggère d'utiliser à la place:
$sudo service mongodb stop
Cela pourrait marcher.
la source
Essayez soit 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
la source
OS X. Moniteur d'activité , recherchez mongod , traversez-le. puis exécutez à nouveau mongod. problème résolu.
la source
Ouvrez le terminal et tapez:
Entrez ensuite:
la source
J'ai eu le même problème si j'ai essayé d'ouvrir une nouvelle instance de mongod et il a dit qu'il était déjà en cours d'exécution.
J'ai vérifié les documents et il a dit de taper
la source
MongoDB ne peut pas démarrer est principalement dû à un arrêt malpropre. Pour y remédier, supprimez le fichier mongod.lock. Ce fichier se trouve dans le dossier de données.
Trouvez où se trouve votre dossier de données en regardant dans le fichier mongodb.conf ou mongod.conf. (Fichier conf sous / etc sur les systèmes Linux.)
Par exemple, en utilisant la configuration ci-dessus, le fichier se trouve dans /var/lib/mongodb/mongod.lock. Retirez-le simplement et redémarrez mongodb.
la source
J'ai rencontré le même problème. Bien que le
mongodb
service ne soit pas en cours d'exécution, le journal a affiché unaddress already in use
message.ne renvoie rien
Une analyse plus approfondie a révélé que le problème était dû au fichier de verrouillage. Le service fonctionne correctement, après avoir supprimé le fichier de verrouillage et redémarré.
la source
Recherchez les journaux sur /var/log/mongodb/mongod.log et essayez de déduire l'erreur. Dans mon cas, c'était
Impossible de dissocier le fichier socket /tmp/mongodb-27017.sock errno: 1 Opération non autorisée
Supprimé /tmp/mongodb-27017.sock et cela a fonctionné.
la source
essayer
/usr/lib/mongodb/mongod.exe --dbpath c: data \ db
--dbpath (doit être suivi du chemin de votre base de données)
la source
Il est possible que le serveur soit déjà en cours d'exécution. Veuillez le vérifier par la commande mongo fonctionne ou non.
la source
Pour résoudre le problème sous Windows , les étapes ci-dessous fonctionnent pour moi:
Par exemple, la version 3.6 de mongoDB est installée et le chemin d'installation de MongoDB est "D: \ Program Files \ MongoDB".
Créez le dossier D: \ mongodb \ logs, puis créez le fichier mongodb.log dans ce dossier.
Exécutez cmd.exe en tant qu'administrateur ,
Supprimez ces deux fichiers
mongod.lock
etstorage.bson
sous le dossier "D: \ mongodb \ data".Tapez ensuite
net start MongoDB
la cmd en utilisant les privilèges d'administrateur, le problème sera résolu.la source
Il affiche l'erreur listen (): bind () failed errno: 98 Adresse déjà utilisée pour le socket: 0.0.0.0:27017 ie l'adresse 27017 est déjà utilisée par un autre service. veuillez vérifier cela par la commande "netstat -apt | grep" 27017 ""
la source
(Si vous utilisez Linux,) si
ou
n'a pas résolu le problème, déconnexion et reconnexion . Cela a résolu mon problème.
Ou vous pouvez tuer le processus manuellement à partir du terminal, je suppose.
la source
Il semble que la même erreur s'affiche dans les journaux lorsque vous manquez le paramètre d'environnement LC_ALL. C'est déroutant, mais vous pouvez exécuter le
mongo
client pour voir que c'est un problème.la source
si vous exécutez mongo pour la première fois, vous voudrez peut-être définir le chemin en premier
la source
Le processus de mise à mort n'a pas résolu mon problème. Mon mac s'était écrasé et au redémarrage, certains fichiers de verrouillage (mongod.lock, WiredTiger.lock) étaient présents dans mongo dbPath. J'ai déplacé ces fichiers dans un dossier différent (je n'ai pas supprimé pour éviter plus de problèmes), puis cela a fonctionné. Sur successul star, j'ai supprimé les fichiers de verrouillage déplacés.
la source