MongoDB pas l'utilisation de /etc/mongodb.conf après j'ai changé dbpath
Depuis que j'ai changé le dbpath
dans /etc/mongodb.conf
, MongoDB n'a pas été le démarrage automatique, ni l'utilisation de la nouvelle dbpath
. Avant le changement, MongoDB serait en cours d'exécution lorsque l'ordinateur a démarré et j'ai été en mesure de simplement exécuter la commande mongo
à entrer dans la console ou commencez à mon Ruby on Rails serveur sans aucun problème.
Après j'ai fait la modification (dans l'ordre de passer à un nouveau disque avec plus d'espace), la seule façon que je peux obtenir tout ce à travail est en exécutant manuellement la commande mongod --config /etc/mongodb.conf
. Si je ne cours pas, il ne semble pas que le service est en cours d'exécution et en cours d'exécution sans l' --config
option me donner le message d'erreur suivant: ERROR: dbpath (/data/db/) does not exist.
même si le fichier de config ne dit rien sur data/db
.
Quelques autres remarques:
- En plus de changer
/etc/mongodb.conf
, j'ai déplacé tous les fichiers de/var/lib/mongodb
et en/home/nick/appdev/mongodb
. - J'ai changé le propriétaire et le groupe de
root
ànick
. Essayé de changer de retour, mais il ne semble pas résoudre quoi que ce soit. - Je suis sur Ubuntu 12.10 Bêta 1 et Mongo 2.2.0 avec Ruby on Rails 3.2.8
- Ce n'dmesg ou le fichier journal vous parler de regarder mongodb sur pendant le démarrage?
Vous devez vous connecter pour publier un commentaire.
Un retard de suivi sur la question ci-dessus...
J'ai eu un problème similaire après le déplacement de la db à l'ebs sur ec2.
Il s'avère que juste courir mongod encore dirige le dbpath à /data/db/(qui existe).
La
/etc/mongodb.conf
est complètement ignorée à moins d'être spécifiquement dirigées.J'ai réussi à contourner ce problème en utilisant la directive
--config
ou tout simplement de la--dbpath
(les deux fonctionnent)Mais est laissé en se demandant d'où vient mongod prend la valeur par défaut est de...?!
J'ai été incapable de retrouver et de remplacer ces valeurs par défaut de n'importe où.
Quelqu'un ?
Note:
Je suis vraiment agacé par ce comportement de mongod...C'est juste une mauvaise conception,et de mauvaise documentation.
mongod --config
fonctionne, mais le but est d'obtenir mongo pour démarrer automatiquement au démarrage du système, et d'utiliser la db sans options supplémentaires. J'apprécie la confirmation du problème de kman, mais ce post semble fin sur une question sans solution.Il s'avère que j'avais besoin de définir le propriétaire et le groupe
mongodb
. Lorsque j'ai transféré les fichiers dans le nouveau répertoire, j'avais mis le propriétaire et le groupe de mon compte d'utilisateurnick
et j'ai aussi essayéroot
, ni de ce qui a fonctionné.Pour ce faire, voici les commandes suivantes:
Pour confirmer que cela a fonctionné, vous pouvez vérifier les autorisations de fichier avec:
mongod
est en cours d'exécution en vertu de lamongodb
de l'utilisateur, qui est configuré par le biais de la .paquet deb à installer. Vous pourriez aussi avoir quitté le répertoire comme appartenant à Nick et donnée mongodb des autorisations d'écriture à travers le "groupe" ou "tous" à l'aide dechmod
.Après vérification de toutes les autorisations dans les données, journaux, dossiers, comme l'a suggéré, mon problème a été résolu en donnant l'autorisation à un fichier de verrouillage dans le dossier /tmp
Je courais comme une AWS Amazon instance de Linux. J'ai figuré que par l'exécution de la mongod utilisateur comme ci-dessous, et ensuite, de rechercher le code d'erreur. Il pourrait être utile pour d'autres de dépannage.
MongoDB 1.6 est très ancienne et la dernière version de production est 2.2, qui contient une grande quantité de corrections de bugs et améliorations depuis la 1.6.
Suis-je correct que vous n'avez pas installé de 1,6 via un gestionnaire de paquets comme yum ou d'aptitude? Je ne crois pas qu'il y a des paquets de 1.6 à l'heure actuelle autant que je sache. Par conséquent,
mongod
se comporte correctement tant que vous n'avez pas commencé MongoDB avec un script de contrôle.Veuillez voir cette lien sur les options du fichier de configuration.