J'ai récemment installé mongodb-2.6.0 avec Homebrew . Après avoir installé avec succès, j'ai essayé de me connecter à l'aide de la mongo
commande. Je reçois les erreurs suivantes qui ne me permettent pas de me connecter:
Failed to connect to 127.0.0.1:27017, reason: errno:61 Connection refused
Error: couldn't connect to server 127.0.0.1:27017 (127.0.0.1), connection attempt failed at src/mongo/shell/mongo.js:146
exception: connect failed
/var/logs/mongodb
si je me souviens bien.Réponses:
Cela peut arriver lorsque le service mongodb ne fonctionne pas sur le mac. Pour le démarrer, j'ai essayé
et cela a fonctionné.
Edit: Selon la discussion sur ce PR sur homebrew: https://github.com/Homebrew/homebrew/issues/30628
brew services
est obsolète, j'ai regardé autour de SO et j'ai trouvé que ces réponses répondent maintenant à la question: Quelle est la bonne façon de démarrer un service mongod sur Linux / OS X?la source
sudo mongod
a commencé le mongodb, puis la commande mongo a fonctionné. Merci @Ali Raza Bhayani.J'ai rencontré exactement le même problème et voici un processus clair étape par étape pour éviter cette erreur.
Étape 1 - Installation (ne suivez pas cette étape si vous avez déjà installé MongoDB):
Étape 2 - Exécutez Mongo Daemon:
Étape 3 - Exécutez l'interface Mongo Shell:
Dans cette séquence, j'ai pu exécuter la
mongo
commande sans aucune erreur. J'ai également détaillé la trace d'erreur et sa solution sur ce blog .la source
Pour résoudre votre problème, vous devez suivre les instructions qui vous sont ensuite données par brew après avoir utilisé "brew install mongodb".
Pour que launchd démarre mongodb à la connexion:
Ensuite, pour charger mongodb maintenant:
Ou, si vous ne voulez / n'avez pas besoin de launchctl, vous pouvez simplement exécuter:
Vous pourrez peut-être exécuter cette dernière commande, mais cela n'a pas fonctionné pour moi et j'avais besoin d'exécuter la deuxième commande. Pour me sauver dans le futur. Je viens d'exécuter la première commande aussi. J'espère que cela pourra aider!
EDIT La méthode d'utilisation de Hrishi
brew services mongodb start
a bien fonctionné pour moi. Je pense qu'ils devraient inclure cela dans la documentation mongo.la source
ctrl + c
et d'essayermongo
après cela.Dans un autre onglet, vous pouvez démarrer le shell mongo avec
Revenez ensuite à l'onglet précédent et réessayez. Si vous rencontrez des difficultés pour configurer votre mongoshell, consultez ce lien sur le shell mongo: http://docs.mongodb.org/manual/tutorial/manage-mongodb-processes/ ou ce lien sur l'installation de mongodb: http: / /docs.mongodb.org/manual/tutorial/install-mongodb-on-os-x/
la source
J'avais le même problème lors de l'appel à
mongod
partir de la ligne de commande.J'ai résolu cela en appelant à la place
sudo mongod
.la source
J'ai eu la même erreur mais une cause première différente. Je pensais que je publierais la solution ici au cas où quelqu'un d'autre rencontrerait le problème. J'ai eu cette erreur après l'arrêt incorrect de mon Mac pendant que j'exécutais
mongorestore -d foo dump/foo/
.tl; dr : je fixe le problème en supprimant le endommagé
foo.ns
fichier avecfoo.0
,foo.1
... à partir de mon dossier de données/usr/local/var/mongodb/
. Ensuite, j'ai redémarré le serveur mongo avecbrew services restart mongodb
et je suis revenu à la normale.Détails : J'ai continué à recevoir l'erreur même après avoir essayé de démarrer ou de redémarrer le service mongodb via brew ou launchctl. Finalement, j'ai couru
mongod --dbpath /usr/local/var/mongodb
et j'ai vu que le service ne démarrait pas réellement, et la séquence de démarrage comprenait l'erreur suivante:[initandlisten] bad .ns file: /usr/local/var/mongodb/foo.ns [initandlisten] User Assertion: 10079:bad .ns file length, cannot open database
je me suis débarrassé du mauvais.ns
fichier et du reste des fichiers de données, et la prochaine fois que j'ai démarré le service, j'étais prêt à partir .la source
pour moi sur osx, j'ai dû tuer l'ancienne instance en cours d'exécution, puis le redémarrage a fonctionné.
la source
Pour tous ceux qui recherchent la réponse après la mise à jour de votre Mac vers OS Catalina
courir
trouvez plus d'informations ici: https://medium.com/@semmons245/arghhhh-thanks-to-the-catalina-os-update-this-now-needs-changing-987f416ebcbe
la source
J'ai eu cette erreur après avoir mis à niveau vers mongo 3.6 avec homebrew.
Le journal
/usr/local/var/log/mongodb/mongo.log
contenait le messageshutting down with code:62
. Ce code d'erreur signifie que la base de données existante est trop ancienne pour fonctionner avec la version actuelle de mongo.J'ai trouvé 2 solutions dans une autre question SO :
/usr/local/var/mongodb
)J'ai choisi de mettre à niveau. Dans mon cas, cela signifiait que je devais revenir à la version 3.4, exécuter une commande dans la console mongo, puis mettre à niveau à nouveau. Mongo vous oblige à mettre à niveau une version majeure à la fois, donc en fonction de votre ancienneté, il pourrait y avoir des étapes supplémentaires. Les documents vous guideront.
Les commandes
brew switch
* etbrew services restart
rendaient l'échange entre les versions relativement simple.la source
Si vous avez déjà installé MongoDB, essayez d'abord d'exécuter mongod en tant qu'utilisateur sudo, j'étais confronté au problème car je n'utilisais pas mongod en tant que superutilisateur.
J'ai collé l'o / p pour les deux commandes ( mongod et sudo mongod ) tout en bas, vous pouvez vérifier cela aussi mais
Essayez d'abord ceci
pas ça
J'avais installé MongoDB sur mon MAC OS X Sierra 10.12.6 en exécutant la commande suivante dans l'ordre.
puis créé un répertoire dans lequel le processus mongod écrira les données, ceci est facultatif car le processus mongod les prend par défaut, voir ce guide utile à https://docs.mongodb.com/manual/tutorial/install-mongodb-on-os -X/
Finalement commencé le processus mongod comme suit
Oputput des commandes mongod (échoué) et sudo mongod (réussi) sur mon terminal.
Ensuite, j'ai ouvert un nouveau terminal pour commencer à interroger MongoDB , cela a fonctionné.
C'est tout.
la source
J'ai eu le même problème et en regardant dans le fichier journal, j'ai vu ceci:
J'ai donc créé le répertoire et
/usr/local/var/mongodb
émis la commande de redémarrage des services de brassage mongodb J'ai pu ouvrir la console mongo.la source
Mongo
la source
Mon erreur similaire est résolue en supprimant le fichier "sudo rm /data/db/mongod.lock" en essayant d'exécuter mongod. Maintenant, vous pouvez exécuter mongod puis mongo.
la source