web-dev-qa-db-fra.com

MongoDB: Impossible de se connecter à 127.0.0.1:27017, raison: errno: 61 Connexion refusée

Mon problème est similaire aux autres entrées et suggestions sur ce site, mais aucun ne m'a aidé. Après l'installation de MongoDB, n'a pas démarré car la base de données n'est pas en cours d'exécution.

Essayez d'abord de lancer mongo et j'ai répondu à ceci:

Mac-Pro-de-User: ~ user $ mongo 
MongoDB Shell version: 2.6.4 
connecting to: test 
2014-10-28T10: 47: 08713-0700 warning: Failed to connect to 127.0.0.1:27017, reason: errno: 61 Connection refused 
2014-10-28T10: 47: 08713-0700 Error: could not connect to server 127.0.0.1:27017 (127.0.0.1) Attempt connection failed at src / mongo / Shell / mongo.js: 146 
exception: connect failed 

Ensuite, essayez de vérifier le Mongod et j'ai répondu à ceci: 

Mac-Pro-de-User: ~ user $ mongod 
mongod --help for help and startup options 
2014-10-28T10: 59: 34485-0700 [initandlisten] MongoDB starting: pid = 926 port = 27017 dbpath = / data / db Host = 64-bit Mac-Pro-de-Ernesto.local 
2014-10-28T10: 59: 34485-0700 [initandlisten] 
2014-10-28T10: 59: 34485-0700 [initandlisten] ** WARNING: soft rlimits too low. Number of files is 256, Should be at Least 1000 
2014-10-28T10: 59: 34485-0700 [initandlisten] db version v2.6.4 
2014-10-28T10: 59: 34485-0700 [initandlisten] git version: 3a830be0eb92d772aa855ebb711ac91d658ee910 
2014-10-28T10: 59: 34485-0700 [initandlisten] Build info: Darwin bs-osx108-4 12.5.0 Darwin Kernel Version 12.5.0: Sun Sep 29 13:33:47 PDT 2013; root: xnu-2050.48.12 ~ 1 / x86_64 RELEASE_X86_64 BOOST_LIB_VERSION = 1_49 
2014-10-28T10: 59: 34485-0700 [initandlisten] allocator: system 
2014-10-28T10: 59: 34485-0700 [initandlisten] options: {} 
2014-10-28T10: 59: 34486-0700 [initandlisten] journal dir = / data / db / journal 
2014-10-28T10: 59: 34486-0700 [initandlisten] recover: no journal files present, no recovery needed 
2014-10-28T10: 59: 34500-0700 [FileAllocator] allocating new datafile /data/db/local.ns, filling zeroes With ... 
2014-10-28T10: 59: 34500-0700 [FileAllocator] creating directory / data / db / _tmp 
2014-10-28T10: 59: 34512-0700 [FileAllocator] done allocating datafile /data/db/local.ns, size: 16MB, took 0.011 secs 
2014-10-28T10: 59: 34726-0700 [FileAllocator] allocating new datafile /data/db/local.0, filling zeroes With ... 
2014-10-28T10: 59: 35398-0700 [FileAllocator] done allocating datafile /data/db/local.0, size: 64MB, took 0.671 secs 
2014-10-28T10: 59: 35695-0700 [initandlisten] build index on: local.startup_log properties: {v: 1, key: {_id: 1}, name: "_id_" ns "local.startup_log"} 
2014-10-28T10: 59: 35695-0700 [initandlisten] index added to empty collection 
2014-10-28T10: 59: 35695-0700 [initandlisten] Local command $ cmd command. Create {create: "startup_log" size: 10485760, capped: true} ntoreturn: 1 KeyUpdates: 0 numYields: 0 reslen: 37 1194ms 
2014-10-28T10: 59: 35695-0700 [initandlisten] waiting for connections on port 27017 
2014-10-28T11: 00: 34516-0700 [clientcursormon] mem (MB) res: 33 virt: 2653 
2014-10-28T11: 00: 34516-0700 [clientcursormon] mapped (incl journal view): 160 
2014-10-28T11: 00: 34516-0700 [clientcursormon] connections: 0 

Ensuite, essayez à nouveau de vous connecter et de passer du temps, et dit encore la même chose: 

2014-10-28T11: 05: 34589-0700 [clientcursormon] mem (MB) res: 33 virt: 2653 
2014-10-28T11: 05: 34589-0700 [clientcursormon] mapped (incl journal view): 160 
2014-10-28T11: 05: 34589-0700 [clientcursormon] connections: 0

Etc. Si vous pouviez nous aider, je l'apprécierais beaucoup.

PS: Il existe déjà le/data/db avec 777 autorisations, et je suis en utilisant OSX Mavericks 10.9.5

12
Ernesto Rojas

Exécutez-vous toutes ces commandes dans le même terminal en tant qu’actions distinctes, comme le suggère votre horodatage? (Si non, je m'attendrais à voir un chevauchement entre les échecs et les journaux afin de diagnostiquer correctement).

Si oui, alors ce que vous faites est comme suit:

  1. Démarrage d'un shell, tentative de connexion à une base de données non en cours d'exécution (connexion refusée)
  2. Démarrage de la base de données et affichage de 0 connexions dans les journaux
  3. L'arrêt de la base de données (Ctrl-C ou similaire), le démarrage d'un shell, ne parvient pas à se connecter à nouveau car la base de données a été fermée
  4. Démarrage de la base de données et affichage de 0 connexions dans les journaux
  5. répéter

La base de données doit être exécutée simultanément avec le shell pour que vous puissiez vous y connecter. Par conséquent, vous devez démarrer le processus mongod dans un terminal, le laisser fonctionner, puis ouvrir un nouveau terminal (ou un nouvel onglet) et exécuter la commande mongo pour vous connecter à la base de données en cours d'exécution. L'autre option consiste à exécuter mongod en tant que démon , ce qui vous permettra d'exécuter la commande mongo dans le même terminal une fois qu'elle sera renvoyée.

Remarque: vous ne devriez jamais avoir un dossier avec des autorisations 777, il n'est pas obligatoire et constitue un risque de sécurité important.

19
Adam Comerford

Essayez juste cette commande.

Sudo chown mongodb /tmp/mongodb-27017.sock

Et

Sudo service mongod restart

1
J.Jai

Fixé!

La raison en était la variable dbpath dans /etc/mongodb.conf. Auparavant, j'utilisais mongodb 1.8, où la valeur par défaut de dbpath était/data/db. Le travail upstart mongodb (fourni avec le paquetage mongodb-10gen) appelle mongod avec l'option --config /etc/mongodb.conf.

En guise de solution, il me suffisait de changer le propriétaire du répertoire/data/db de manière récursive.

Comme ceci: Allez dans "/ data" dans le terminal puis tapez 

Sudo chown -R <username>:foldername

Par exemple:

Sudo chown -R raja db/

1
Raja Parivesh

Bonjour, vérifiez si vous avez créé le chemin/data/db et si vous avez donné l'autorisation 755 avec chmod.

0
geekgarage