Si quelqu'un peut fournir quelques idées ici, je l'apprécierais grandement.
Je suis nouveau sur MongoDB et relativement (relativement) sur la ligne de commande.
J'avais une application express/node.js s'exécutant sur MongoDB localement, mais après avoir redémarré mon ordinateur, j'ai tenté de redémarrer le serveur Mongo. Elle a commencé à donner des erreurs et à ne pas démarrer. Depuis lors, j'ai réinstallé Mongo plusieurs fois pour trouver la même erreur. voici ce que je reçois:
privee:mongodb-osx-x86_64-2.4.6 jonlinton$ ./bin/mongo
MongoDB Shell version: 2.4.6
connecting to: test
Mon Aug 26 14:48:47.168 Error: couldn't connect to server 127.0.0.1:27017 at src/mongo/Shell/mongo.js:145
exception: connect failed
Est-ce que je manque une étape? Devrais-je créer un fichier de configuration? Quelques conseils de base seraient vraiment utiles. Merci d'avance pour toute idée.
En supposant que vous ayez créé le répertoire data/db sous bin après l’installation.
<mongodb-install-directory>/bin
Lancer la commande
./mongod
Démarrer un terminal pour votre shell mongo
<mongodb-install-directory>/bin
Exécutez la commande (assurez-vous de mettre le nom de la base de données)
./mongo test
Si vous avez installé mongodb via homebrew
, vous pouvez simplement lancer mongodb via
brew services start mongodb
Accédez ensuite au shell par
mongo
Vous pouvez arrêter votre base de données en
brew services stop mongodb
Vous pouvez redémarrer votre base de données en
brew services restart mongodb
Pour plus d'options
brew info mongodb
Réponse mise à jour (9/2/2019):
Homebrew a supprimé la formule mongodb de son référentiel principal, voir cette demande d'extraction .
La nouvelle façon d’installer mongodb avec Homebrew est la suivante:
~> brew tap mongodb/brew
~> brew install mongodb-community
Après l’installation, vous pouvez démarrer le service mongodb en suivant les avertissements:
~> brew info mongodb-community
mongodb/brew/mongodb-community: stable 4.2.0
High-performance, schema-free, document-oriented database
https://www.mongodb.com/
Not installed
From: https://github.com/mongodb/homebrew-brew/blob/master/Formula/mongodb-community.rb
==> Caveats
To have launchd start mongodb/brew/mongodb-community now and restart at login:
brew services start mongodb/brew/mongodb-community
Or, if you don't want/need a background service you can just run:
mongod --config /usr/local/etc/mongod.conf
Réponse obsolète (27/08/2019):
Je suppose que vous utilisez Homebrew. Vous pouvez voir les informations supplémentaires dont vous avez besoin avec brew info $FORMULA
~> brew info mongo 255
mongodb: stable 2.4.6, devel 2.5.1
http://www.mongodb.org/
/usr/local/Cellar/mongodb/2.4.5-x86_64 (20 files, 287M) *
Built from source
From: https://github.com/mxcl/homebrew/commits/master/Library/Formula/mongodb.rb
==> Caveats
To reload mongodb after an upgrade:
launchctl unload ~/Library/LaunchAgents/homebrew.mxcl.mongodb.plist
launchctl load ~/Library/LaunchAgents/homebrew.mxcl.mongodb.plist
Les mises en garde sont ce que vous devez suivre après l'installation.
Le problème est que vous essayez d'ouvrir un shell mongo sans démarrer une base de données mongo qui écoute le port 127.0.0.1:27017(deafault pour la base de données mongo). C'est en quoi consiste l'erreur:
Error: couldn't connect to server 127.0.0.1:27017 at src/mongo/Shell/mongo.js:145 exception: connect failed
La solution la plus simple consiste à ouvrir le terminal et à taper
$ mongod --dbpath ~/data/db
Remarque: dbpath est ici "Utilisateurs/utilisateur" où les répertoires data/db sont créés
c'est-à-dire que vous devez créer un répertoire data et un sous-répertoire db dans votre dossier utilisateur. Par exemple, dites `
/ Users/johnny/data
Après mongo db est en place. Ouvrez un autre terminal dans une nouvelle fenêtre et tapez
$ mongo
il ouvrira mongo Shell avec votre connexion mongo db ouverte dans un autre terminal.
mongo => mongo-db console
mongodb => mongo-db server
Si vous êtes sur Mac et recherchez un moyen plus facile de démarrer/arrêter votre serveur mongo-db, alors volet des préférences de MongoDB est une solution à prendre en compte. Avec lui, vous démarrez/arrêtez votre instance mongo-db via l'interface utilisateur. J'espère que ça aide!
Installer une infusion
Ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
Mettez à jour et vérifiez que vous êtes bon avec
brew update
brew doctor
Installez mongodb avec
brew install mongodb
Créer un dossier pour les fichiers de données mongo:
mkdir -p /data/db
Définir les autorisations
Sudo chown -R `id -un` /data/db
Ouvrez une autre fenêtre de terminal et exécutez et continuez à exécuter un serveur/démon Mongo
mongod
Revenez au terminal précédent et exécutez un shell mongodb pour accéder aux données
mongo
La coquille:
quit()
Le serveur
ctrl-c
en outre, vous pouvez vouloir que Mongo s'exécute sur un autre port, puis collez cette commande sur le terminal,
mongod --dbpath /data/db/ --port 27018
où 27018 est le port sur lequel nous voulons que Mongo s'exécute
/usr/local/bin/
pour mac (ce qui serait le cas si vous installiez avec Brew), sinon vous auriez besoin de naviguer vers le chemin où mongo est installé./data/db/
existeAssurez-vous que vous êtes connecté en tant qu'utilisateur root sur votre terminal.
Étapes pour démarrer mongodb server sur votre mac
Sudo su
mongod
J'espère que ça vous aide. Merci