Ne peut pas démarrer MongoDB en tant que service
J'ai été en développement pour MongoDB depuis quelques mois maintenant et voudrais l'installer en tant que service sur mon Windows 7 Enterprise machine. Voici la commande que j'ai accompli pour créer le service:
"D:\Milvia Systems\Development\MongoDB\mongod.exe" --logpath "D:\Milvia Systems\Development\MongoDB\logs\DBLog.log" --logappend --dbpath "D:\Milvia Systems\Development\MongoDB\db" -vvv --reinstall
Cependant, chaque fois que j'utilise net start "MongoDB" ou le Service de Contrôle de Panneau, j'ai l'erreur suivante:
Erreur 1053: Le service n'a pas répondu à la de lancement ou de contrôle
la demande en temps opportun.
Environnement: Windows 7 Entreprise 64 bits
MongoDB: 1.6.3 pdfile version 4.5
- J'ai eu le même problème lors de l'installation de mongodb en tant que service. Le problème est que j'ai utilisé un chemin relatif pour le fichier de configuration.
- vous avez besoin administrative situation pour elle
Vous devez vous connecter pour publier un commentaire.
Avez vos bagages de vous connecter pour voir le vrai problème?
Je suggère l'extraction de la Mongo installation de
c:\mongodb
.Créer le
c:\mongodb\logs
et lac:\mongodb\data\db
répertoires.Puis parcourir la le
c:\mongodb\bin
répertoire et exécutez la commande suivante pour supprimer le service (si vous avez installé!):Ensuite installer le service, en précisant le journal et répertoires de données:
Alors si il y a un problème de démarrage du service, vous devriez voir la raison dans le fichier journal spécifié.
Plus d'infos ici.
Si vous ne spécifiez pas de fichier absolu chemins d'accès pour les données du répertoire ou du répertoire des journaux, vous obtiendrez la même erreur Windows, mais aucun fichier journal.
J'ai utilisé les informations de "Installer MongoDB Service sur Windows 7", poussé sur Webiyo pour corriger le service inscrit arguments:
Exécuter la commande suivante:
Ouvrez l'éditeur de registre (regedit.exe), allez à HKEY_LOCAL_MACHINE → SYSTÈME → CurrentControlSet → Services.
Trouver la MongoDB clés et définir le "ImagePath" valeur:
Enregistrer les modifications dans le registre et quittez l'éditeur du registre.
Je viens de rencontré le même problème sur mon ordinateur windows 7. J'ai suivi les instructions dans MongoDBs Docs pour l'installer, mais il ne me laisserait pas exécuter la commande "net start MongoDB" à moins que j'ai été dans "C:\". Je ne voulais pas revenir en arrière et réinstaller MongoDB à suivre les instructions contenues dans le Webiyo lien mentionné ci-dessus si. Si vous avez déjà installé MongoDB en fonction de leurs docs et que vous voulez être en mesure d'exécuter la commande "net start MongoDB" de l'endroit où votre répertoire de projet est:
Allez à HKEY_LOCAL_MACHINE > SYSTÈME > CurrentControlSet > services > MongoDB
Double-cliquez sur ImagePath sous le Nom de la colonne
Coller dans la suite de ImagePath ( modifier le répertoire du dossier et les noms qui correspondent à vos besoins ):
Notez que si vous copie directe de cette valeur ImagePath et votre dossier "data" est dans la mongodb répertoire au lieu de C:\ ajoutez la ligne suivante à votre "mongod.cfg" fichier:
dbpath=C:\mongodb\data\db
Après je l'ai fait, quand je lance "net stop MongoDB" je reçois le message "erreur Système 109 a eu lieu. Le canal a été terminée." Vous pouvez le voir ainsi. Ce message a été longuement discuté lors d' jira.mongodb.org.
Pour vous sauver le temps de lire l'ensemble du dos et de la suite de la discussion, Tad Marshall post résume à cette question:
"... il a été fonctionne correctement dans la 2.1.0; plus tard, des modifications qu'elle a éclaté de nouveau. Mais oui, vous obtenez ce message d'erreur dans le code actuel.
L'explication est que mongod.exe quitte à partir d'un rappel thread créé par le Gestionnaire de Contrôle des Services quand il nous appelle, en raison des "net stop mongodb" et cela rompt avec le RPC tube utilisé pour créer le rappel de fil. Nous avons besoin de réorganiser notre sortie logique pour éviter de le faire.
Le message d'erreur est le seul effet réel de cette question; nous quitter sur commande, proprement, et d'informer le Gestionnaire de Contrôle des Services que nous nous sommes arrêtés, mais alors le "net" de commande affiche un message d'erreur parce que nous n'avons pas de retour de l'appel RPC de la façon dont il attend de nous."
J'ai exécuté cette commande:
Et reçu ce message:
Après quelques essais et erreurs, j'ai remarqué que lorsque l'on suit le tutoriel, il m'a demandé le nom de mon fichier mongod.conf mais la commande a été d'essayer de se référer à mongod.cfg.
Dès que je l'ai corrigée nom et de ré-exécuter les commandes,
Le service a commencé en cours d'exécution fine.
À d'autres qui auraient le même problème sur Windows Server 2012:
J'ai juste eu le même problème avec Mongo 3.0.3 sous Windows Server 2012. Je ne suis pas un admin système, donc je ne sais pas ce qu'ils ont changé pour sc.exe. J'ai utiliser
Ce n'est pas le \"\" pour le binaire et de fichier de config chemins comparant à celle sur leur site web.
Ce sont les étapes que j'ai suivi pour installer mongoDB sur windows 7
télécharger l' .le fichier msi de mongodb site--> https://www.mongodb.com/download-center?jmp=nav#community et l'exécuter
Où votre mondoDb est téléchargé (généralement le lecteur c dossier Program Files), allez dans ce dossier et où est le dossier bin dans le même dossier, créez votre dossier de données et votre dossier du journal
3.À l'intérieur de votre dossier de données créer votre db dossier
La structure devrait ressembler à quelque chose comme ceci
Maintenant, ouvrez l'invite de commande en tant qu'administrateur.
changer votre chemin d'accès au fichier et entrez dans le dossier bin.( dans ce cas, il serait c>program files>MongoDB>bin> )
Tapez la commande suivante : mongod --directoryperdb --dbpath "C:/Program Files\MongoDB\data" --logpath "C:\Program Files\MongoDB\log\mongo.journal" --logappend --reste-installer
Ce serait le logpath et chemin de base de données. Enfin exécuter net start MongoDB . Espérons que cette aide.
Mon mongod.fichier cfg a la suite de deux dernières lignes:
Je n'ai aucune idée pourquoi il y a un mp: en il. Mais quand je l'ai exécutée manuellement le chemin de l'image
à
J'ai eu
Donc j'ai commenté et puis, le service a commencé sans aucun problème.
:mp
à la configuration par défaut. Retirer aidé à résoudre le problème. Remarque: vous devez lancer votre éditeur de texte avec des privilèges d'administrateur avant d'ouvrir le fichier de configuration.Pour mongoDB 3.0, Vous devez définir les paramètres suivants dans le fichier de configuration.
la logpath devrait se terminer avec un fichier et non un dossier.
Vérifier si votre mongod.fichier cfg contient des onglets en elle. La suppression des tabulations résolu pour moi!
Suite à des travaux avec MongoDB 3.6.0
Assurez-vous d'avoir ces dossiers:
Puis tous vous avez besoin sont ces commandes:
Une autre manière peut échouer si le compte qui exécute le service n'a pas la permission d'écrire dans le répertoire de données.
Dans ce cas, le service sera impossible de créer un fichier de verrouillage.
La mongod service se comporte mal dans cette situation et va dans une boucle à partir d'un processus, qui a immédiatement déclenche une exception non gérée, les accidents, etc. le fichier de journalisation est recréé à chaque fois que le processus de démarrage, vous devez donc les attraper rapide si vous voulez voir l'erreur.
l'utilisateur par défaut pour les services windows serait localhost\system. ainsi, le correctif est de veiller à ce que cet utilisateur peut écrire dans votre répertoire db, ou de démarrer le service comme un autre utilisateur qui peut.
Pour la version 2.6 au moins, vous devez créer le /data/db/et /log/dossiers que les mongo.cfg points. MongoDB pas le faire lui-même, et va jeter cette erreur dans la réponse quand a couru comme un service.
assurez-vous d'ouvrir la ligne de commande avec "exécuter en tant qu'administrateur" droits dans le clic droit, avant de saisir la totalité de la mongod choses
Après avoir passer une demi-heure de débogage ... j'ai finalement trouvé qu'il est seul tiret avant le "reste" de l'attribut.
Simplement essayer d'exécuter mongod.exe localement en ligne de commande, vous pouvez obtenir ici exception, que mongod appels et essayer de le résoudre. Dans mon cas, il était de petite taille de l'espace libre sur le disque local, donc je viens de changer l'emplacement des répertoires et changement Mongocofig fichier et maintenant c'run ok.
Si vous regardez dans les détails du service, vous pouvez voir que la commande pour démarrer le service est quelque chose comme:
MongoDB équipe oublié d'ajouter le
"
autour de la--config
option. Donc, il suffit de modifier le registre pour corriger et il va fonctionner.J'ai eu le même problème sur windows 8.1
La solution qui a fonctionné pour moi est de spécifier le chemin d'accès au fichier de config correctement
Va
HKEY_LOCAL_MACHINE > SYSTEM > CurrentControlSet > services > MongoDB > imagePath
la valeur a été comme suit:Ensuite seulement j'ai corrigé le fichier config chemin pour correspondre à mon chemin réel:
N'oubliez pas de créer la base de données avant de commencer le service
Ensuite, vous pouvez arrêter le processus de Contrôle-C
Maintenant votre base de données est prêt et vous pouvez démarrer le service à l'aide de
Vérifier si une instance de processus de
mongod
est déjà en cours d'exécution. Si oui, ce service ne démarre pas, carC:\data\db\mongod.lock
sera utilisé par elle.Et pour commencer MongoDB comme un service, ce fichier ne doit pas être utilisé par un processus.
Pour moi, le problème était le mauvais répertoire. Assurez-vous de copier coller le répertoire de votre explorateur de fichier et de ne pas assumer le répertoire spécifié sur les docs de page correct.
Si vous recevez le message d'erreur:
lors de l'exécution de la commande net start mongodb, vous devrez exécuter la commande suivante à partir de l'Étape 4 de la Créer Manuellement un Service Windows pour MongoDB Communauté Editition:
J'ai commencé à suivre un tutoriel sur un blog que nécessaire MongoDB. Il avait des instructions sur le téléchargement et la configuration du service. Mais pour une raison quelconque, la commande pour démarrer le service Windows dans ce tutoriel ne fonctionnait pas. Je suis donc allé à la MongoDB docs et essayé de lancer cette commande comme indiqué dans le mongodb.org-
La commande pour strting mongodb service
sc.exe créer MongoDB binPath= "\"C:\MongoDB\bin\mongod.exe\" --service --config=\"C:\MongoDB\bin\mongodb\mongod.cfg\"", DisplayName= "MongoDB" start= "auto"
J'ai eu ce message: [SC] CreateService SUCCÈS
Puis j'ai couru à celui-ci:
net start MongoDB
Et reçu ce message:
J'ai créer un fichier nommé " mongod.cfg "dans la" C:\MongoDB\bin\mongodb\'
Dès que j'ai ajouté ce fichier et ré-exécuté la commande "net start MongoDB", le service a commencé en cours d'exécution fine.
Espère que cette aide.
Bien, dans mon cas, j'ai été faible espace disque sur mon disque où j'ai mes fichiers de données MongoDB. J'ai vérifié MongoDB journaux de fichier qui a déclaré ce qui suit
Tout ce que j'avais à faire est de nettoyer l'espace et tirer à nouveau le service.. a Fonctionné pour moi. Donc, Tout ce que vous devez est de vérifier votre journaux de fichier et de traiter le problème en conséquence.