Pour une raison quelconque, chaque fois que j'essaie de démarrer MongoDB en tant que service (démarrage du service Sudo), l'erreur suivante apparaît:
Impossible de démarrer mongod.service: unité mongod.service introuvable. J'ai suivi les étapes d'installation, mentionnant le lien suivant installation de la base de données mongo échoué
system> Sudo systemctl start mongodb
Failed to start mongodb.service: Unknown unit: mongodb.service
Et quand j'essaie Sudo mongod
:
MongoDB Shell version: 3.2.13 connecting to: -
2017-06-03T16:19:28.513+0530 W NETWORK [thread1]
Failed to connect to 127.0.0.1:27017, in(checking socket for error after poll), reason: errno:111 Connection refused
2017-06-03T16:19:28.514+0530 E QUERY [thread1]
Error: couldn't connect to server 127.0.0.1:27017, connection attempt failed : connect@src/mongo/Shell/mongo.js:229:14 @(connect):1:6 exception: connect failed
Et quand j'essaie mongod --repair
:
2017-06-03T16:32:35.514+0530 I CONTROL [initandlisten]
MongoDB starting : pid=17423 port=27017 dbpath=/data/db 64-bit Host=sid-Ideapad-Z570 2017-06-03T16:32:35.514+0530 I
CONTROL [initandlisten] db version v3.2.13 [listen] target_Arch: x86_64 2017-06-03T16:32:35.514+0530 I
CONTROL [initandlisten] options: {} 2017-06-03T16:32:35.540+0530 I STORAGE [initandlisten] exception in initAndListen: 29 Data directory /data/db not found., terminating
J'ai réinstallé mongod-org, car mes données resteront en sécurité.
Le problème était que mon système ne pouvait pas trouver mongod.service quand j'ai exécuté Sudo service mongod status
.
L'exécuter a corrigé le problème et restauré le service:
Sudo systemctl enable mongod
Ensuite, tout ce que j'avais à faire était de copier ma configuration correcte dans /etc/mongod.conf
et de l'exécuter.
Sudo service mongod restart
Cela a fonctionné pour moi.
Désinstallez complètement votre mongo de votre système:
Sudo service mongod stop
Sudo apt-get purge mongodb-org*
Sudo rm -r /var/log/mongodb
Sudo rm -r /var/lib/mongodb
Maintenant, réinstallez mongodb en utilisant les commandes suivantes:
Sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 2930ADAE8CAF5059EE73BB4B58712A2291FA4AD5
echo "deb [ Arch=AMD64,arm64 ] https://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.6 multiverse" | Sudo tee /etc/apt/sources.list.d/mongodb-org-3.6.list
Sudo apt-get update
Sudo apt-get install -y mongodb-org
Pour installer une version spécifique, vous devez spécifier chaque package de composant individuellement avec le numéro de version, comme dans l'exemple suivant:
Sudo apt-get install -y mongodb-org=3.6.0 mongodb-org-server=3.6.0 mongodb-org-Shell=3.6.0 mongodb-org-mongos=3.6.0 mongodb-org-tools=3.6.0
Vous pouvez maintenant voir Mongod fonctionner, mais le même problème vous préoccupe toujours. Le problème est que votre système n'a pas pu trouver le fichier mongod.service lorsque vous exécutez Sudo service mongod status
.
L'exécuter a corrigé le problème et restauré le service:
Sudo systemctl enable mongod
Maintenant, vous êtes prêt à utiliser le mongo.
Sudo service mongod restart
J'ai moi aussi rencontré le problème exact mentionné par OP, même si j'ai installé Mongodb à l'aide du tutoriel d'installation officiel ( https://docs.mongodb.com/manual/tutorial/install-mongodb-on-ubuntu/ ),
REMARQUE: à l'étape 2 du didacticiel (création d'un fichier de liste pour Mongodb), il est important de cliquer sur l'onglet spécifique à la version particulière d'Ubuntu sur votre ordinateur. Par défaut, il affiche Ubuntu 14.04, qui a créé les problèmes mentionnés par OP (Impossible de démarrer mongod.service: Unité mongod.service introuvable)
Lorsque j'ai finalement remarqué que, lors de l'étape 2, je devais correctement sélectionner Ubuntu 16.04 (pour moi), l'installation était réussie et après cette mongod s'est déroulée sans aucun problème.