Le service MongoDB ne démarre pas après l'installation initiale
Je suis sous Fedora 20 et installé MongoDB par la Guide d'installation de Red Hat sur la documentation officielle. J'ai été en mesure d'exécuter le mongod
démon comme un service sans erreur la première fois, mais quand j'ai arrêté ma machine et revint, le service a refusé de démarrer à cause d'une panne.
Dans mon journal, énumérés après le succès de l'exécuter, je vois ceci:
***** SERVER RESTARTED *****
ERROR: Cannot write pid file to /var/run/mongodb/mongod.pid: No such file or directory
Si j'essaie de départ mongod
ou de l'exécution mongod --repair
manuellement, j'obtiens ce message dans une start-up de l'échec:
ERROR: dbpath (/data/db) does not exist.
Create this directory or give existing directory in --dbpath.
C'est bizarre vu que dans mon fichier de config dans /etc/mongod.conf
les paramètres pour le chemin de base de données sont comme suit:
dbpath=/var/lib/mongo
Enfin, si je lance cette commande:
mongod --dbpath /var/lib/mongo
Le démon démarre très bien. Cependant, je n'arrive pas à reproduire l'erreur de comportement pour le démarrage d'un service.
Quelqu'un peut me dire quel est exactement le problème et comment je peux commencer à courir mongod
en tant que service?
MODIFIER
Je reçois ce message si je lance mongod --config /etc/mongod.conf
:
about to fork child process, waiting until server is ready for connections. forked process: 2702 ERROR: child process failed, exited with error number 1
La /var/run/mongodb
répertoire n'existe pas, j'ai donc créé et attribué à la mongod de l'utilisateur. Qui n'a pas beaucoup de différence, malheureusement.
Mon /var/log/mongodb/mongod.log
indique ce message:
[initandlisten] exception in initAndListen: 10309 Unable to create/open lock file: /var/lib/mongo/mongod.lock errno:13 Permission denied Is a mongod instance already running?, terminating
source d'informationauteur Pori
Vous devez vous connecter pour publier un commentaire.
Ce qui a fonctionné pour moi sur Fedora 20: nous avons besoin de créer le temp dir à chaque démarrage, et qui sont gérées par systemd-tmpfiles. Pour cela, créez un fichier /lib/tmpfiles.d/mongodb.conf et mettre une ligne:
Qui semble gérer sur redémarre; si vous ne voulez pas redémarrer tout de suite, vous pouvez l'exécuter avec:
(Voir les pages man pour systemd-tmpfiles)
J'ai le même problème, je l'ai résolu temporairement désactiver SELinux, redémarré la machine, éliminé mongod.lock:
En créant le fichier /var/run/mongodb/mongo.pid (comme mentionné dans le fichier de configuration /etc/mongod.conf):
et de donner 777 autorisations:
et de départ mongo:
Mais le problème persiste après le redémarrage de la machine. Le dossier et le fichier disparaître.
J'ai passé un certain temps à la recherche dans ce, et il semble comme si le pid du dossier et les autorisations de fichier ne fonctionne pas avec le démon par défaut.
La solution la plus simple que j'ai trouver est de désactiver le fichier pid simplement en mettant un # devant la ligne dans le fichier de configuration.
trouver la ligne qui dit pidfilepath=/var/run/mongodb/mongod.pid et de le modifier en conséquence.
Pour plus d'informations sur ce commentaire n'vérifier ici.
http://docs.mongodb.org/manual/reference/configuration-options/#processManagement.pidFilePath
Si vous êtes débutant mongod comme un service à l'aide de:
Assurez-vous que les répertoires définis pour logpath, dbpath, et pidfilepath dans votre mongod.conf existent et sont la propriété de mongod:mongod.
J'ai eu le même problème l'exécution de mongodb 3.0.4 sur OpenSuse 13.2, et j'ai trouvé que le mongod sous-répertoire de /var/run manquait. Si j'ai créé le répertoire manuellement elle allait disparaître après un redémarrage.
Je l'ai résolu en ajoutant les lignes suivantes à /etc/init.d/mongod script de démarrage:
Nous avons besoin de créer le temp dir emplacement de pidfile
/var/run/mongodb
qui sont gérées par systemd-tmpfiles. Pour cela, créez un fichier /lib/tmpfiles.d/mongodb.conf en tant que root:Puis de redémarrer ou de l'exécution de cette commande pour activer ce répertoire temp:
Commencer mongod service:
Bibliographie: Fedora Et Mongodb · l33tsource http://goo.gl/XzgSDd
j'ai rencontré le même problème,quand je modifie mon mongod.conf comme suit et problème résolu~
conseils: logpath est le fichier et non un dossier.
Je viens de rencontrer un problème similaire sur ubuntu. Rencontré presque tous les conseils d'ERREUR, comme
ou
child process failed, exited with error number 100
ou
[signalProcessingThread] got signal 2 (Interrupt: 2), will terminate after current cmd ends
Pour combien de fois j'ai supprimer la Mongodb et essayez d'installer à nouveau, mais le problème reste le même....
Enfin j'en suis venu à cette façon:
Sauvegarde de vos données d'abord, puis retirez Mongodb avec
Trouver tous les fichiers en rapport avec mongodb:
De tous les supprimer avec "rm" ou "rmdir", y compris les paquets dans le répertoire /var/cache/... et everthing.
Puis répétez l'installation que la première fois que vous l'avez fait :
Il fonctionnera à nouveau.
Commentaire en dessous de la ligne à partir de votre "mongo.conf" fichier.
pidfilepath=/var/run/mongodb/mongod.pid