Je viens de riak et redis où je n’ai jamais eu de problème avec le démarrage ou l’interaction de ces services.
C'est un problème omniprésent avec le mongo et je suis plutôt désemparé. Le redémarrage n'aide pas. Je suis nouveau à Mongo.
mongo
MongoDB Shell version: 2.2.1
connecting to: test
Fri Nov 9 16:44:06 Error: couldn't connect to server 127.0.0.1:27017 src/mongo/Shell/mongo.js:91
exception: connect failed
C'est ce que je vois dans les journaux.
now open)
Fri Nov 9 16:44:34 [conn47] end connection 10.29.16.208:5306 (1 connection now open)
Fri Nov 9 16:45:04 [initandlisten] connection accepted from 10.29.16.208:5307 #48 (2 connections now open)
Fri Nov 9 16:45:04 [conn48] end connection 10.29.16.208:5307 (1 connection now open)
Fri Nov 9 16:45:04 [initandlisten] connection accepted from 10.29.16.208:5308 #49 (2 connections now open)
Fri Nov 9 16:45:04 [conn49] end connection 10.29.16.208:5308 (1 connection now open)
Fri Nov 9 16:45:34 [initandlisten] connection accepted from 10.29.16.208:5316 #50 (2 connections now open)
Fri Nov 9 16:45:34 [conn50] end connection 10.29.16.208:5316 (1 connection now open)
Fri Nov 9 16:45:34 [initandlisten] connection accepted from 10.29.16.208:5317 #51 (2 connections now open)
Fri Nov 9 16:45:34 [conn51] end connection 10.29.16.208:5317 (1 connection now open)
Fri Nov 9 16:46:04 [initandlisten] connection accepted from 10.29.16.208:5320 #52 (2 connections now open)
Fri Nov 9 16:46:04 [conn52] end connection 10.29.16.208:5320 (1 connection now open)
Fri Nov 9 16:46:04 [initandlisten] connection accepted from 10.29.16.208:5321 #53 (2 connections now open)
Fri Nov 9 16:46:04 [conn53] end connection 10.29.16.208:5321 (1 conn
Cette erreur correspond à ce que vous verriez si le shell mongo n’était pas capable de communiquer avec le serveur Mongod.
Cela peut être dû au fait que l'adresse était incorrecte (hôte ou IP) ou qu'elle ne fonctionnait pas. Une chose à noter est que la trace du journal fournie ne couvre pas le "vendredi 9 novembre 16h44:06" de votre mongo timestamp
.
Peut tu:
Normalement, cela est dû au fait que vous n'avez pas démarré le processus mongod avant d'essayer de démarrer mongo Shell.
Démarrer le serveur Mongod
mongod
Ouvrir une autre fenêtre de terminal
Commencez Shell mongo
mongo
Résolu.
Ce problème pourrait être résolu en 4 étapes mentionnées ci-dessous
1) Supprimer le fichier .lock
Sudo rm /var/lib/mongodb/mongod.lock
2) réparer le mongodb
mongod –repair
3) démarrer le serveur Mongod
Sudo service mongod start
4) démarrer le client mongo
mongo
Pour plus de détails, consultez http://shakthydoss.com/error-couldnt-connect-to-server-127-0-0707017-srcmongoshellmongo-js-exception-connect-failed/
Cette méthode ne fonctionne que si vous voulez réparer vos fichiers de données sans conserver les fichiers originaux
Pour trouver où réside votre chemin dbpath - vim /etc/mongodb.conf
recherchez l'option dbpath =
(J'ai dbpath =/var/lib/mongodb)
Défaut:/data/db /
Les emplacements typiques incluent:/srv/mongodb,/var/lib/mongodb ou/opt/mongodb.
Remplacez le / var/lib/mongodb par votre dbpath
Sudo rm /var/lib/mongodb/mongod.lock
Sudo mongod --dbpath /var/lib/mongodb/ --repair
Sudo mongod --dbpath /var/lib/mongodb/ --journal
(Assurez-vous de laisser le terminal en cours d'exécution dans lequel vous avez dépassé les lignes, N'appuyez pas sur 'Ctrl + c' ou quittez-le.) Tapez la commande pour démarrer mongo maintenant dans une autre fenêtre.
J'espère que cela fonctionne pour toi ! pour ceux qui veulent réparer vos fichiers de données tout en préservant les fichiers originauxmongo récupérer
Dans mon cas:
J'ouvre d'abord le fichier de configuration
Sudo vi /etc/mongodb.conf
Commentaire IP et Port comme ça
#bind_ip = 127.0.0.1
#port = 27017
Puis redémarrez mongodb
Sudo service mongodb restart
Sudo service mongod restart
Enfin, c’est le travail: D
finn@Finn ~ $ mongo
MongoDB Shell version: 2.4.9
connecting to: test
> exit
Assurez-vous que votre mongo est en cours d'exécution . J'ai résolu ce problème en essayant de réparer le mongodb, j'ai constaté que le répertoire requis pour l'exécution de la base de données n'était pas créé. Il montre cette erreur
Tapez: mongod
, cela montrera l'erreur
exception in initAndListen: 29 Data directory /data/db not found., terminating
Une erreur est survenue car dbpath /data/db/
(configuration par défaut) n'existe pas. Vous devez créer un dossier de données et définir l'autorisation correspondante.
Ensuite, je crée un dossier sur mon système avec la commande
Sudo mkdir -p/data/db/ Et Sudo chown id -u
/data/db
puis je lance à nouveau le mongo et cela fonctionne.
Un peu trop tard avec la réponse mais j'ai rencontré le même problème
Voici les étapes qui m'ont aidé.
c:\MongoDB\Server\3.4\bin
"Exécuter en utilisant une interface graphique, EX "robomongo"
Ou
ouvrir un nouveau terminal (CMD) -> aller à EX: "c:\MongoDB\Server\3.4\bin
" taper la commande "mongo"
Si toutes les solutions ci-dessus ne fonctionnent pas: accédez à service (start>search>services
) et démarrez le service mongodb. Puis, dans une invite de commande, après avoir accédé à bin, tapez :/>mongo
Pour vous connecter à Mongo, nous devons d'abord démarrer les services 'Mongod' suivant vous pouvez voir:
$ mongod
2017-03-05T00:31:39.055+0530 I CONTROL [initandlisten] MongoDB starting : pid=1481 port=27017 dbpath=/data/db 64-bit Host=Prabhu-Nandans-Mac.local
2017-03-05T00:31:39.056+0530 I CONTROL [initandlisten] db version v3.4.2
2017-03-05T00:31:39.056+0530 I CONTROL [initandlisten] git version: 3f76e40c105fc223b3e5aac3e20dcd026b83b38b
2017-03-05T00:31:39.056+0530 I CONTROL [initandlisten] OpenSSL version: OpenSSL 1.0.2k 26 Jan 2017
2017-03-05T00:31:39.056+0530 I CONTROL [initandlisten] allocator: system
2017-03-05T00:31:39.056+0530 I CONTROL [initandlisten] modules: none
2017-03-05T00:31:39.056+0530 I CONTROL [initandlisten] build environment:
2017-03-05T00:31:39.056+0530 I CONTROL [initandlisten] distarch: x86_64
2017-03-05T00:31:39.056+0530 I CONTROL [initandlisten] target_Arch: x86_64
2017-03-05T00:31:39.056+0530 I CONTROL [initandlisten] options: {}
2017-03-05T00:31:39.056+0530 W - [initandlisten] Detected unclean shutdown - /data/db/mongod.lock is not empty.
2017-03-05T00:31:39.057+0530 I - [initandlisten] Detected data files in /data/db created by the 'wiredTiger' storage engine, so setting the active storage engine to 'wiredTiger'.
2017-03-05T00:31:39.057+0530 W STORAGE [initandlisten] Recovering data from the last clean checkpoint.
2017-03-05T00:31:39.057+0530 I STORAGE [initandlisten] wiredtiger_open config: create,cache_size=3584M,session_max=20000,eviction=(threads_max=4),config_base=false,statistics=(fast),log=(enabled=true,archive=true,path=journal,compressor=snappy),file_manager=(close_idle_time=100000),checkpoint=(wait=60,log_size=2GB),statistics_log=(wait=0),
2017-03-05T00:31:39.620+0530 I CONTROL [initandlisten]
2017-03-05T00:31:39.620+0530 I CONTROL [initandlisten] ** WARNING: Access control is not enabled for the database.
2017-03-05T00:31:39.620+0530 I CONTROL [initandlisten] ** Read and write access to data and configuration is unrestricted.
2017-03-05T00:31:39.620+0530 I CONTROL [initandlisten]
2017-03-05T00:31:39.620+0530 I CONTROL [initandlisten]
2017-03-05T00:31:39.620+0530 I CONTROL [initandlisten] ** WARNING: soft rlimits too low. Number of files is 256, should be at least 1000
2017-03-05T00:31:39.643+0530 I FTDC [initandlisten] Initializing full-time diagnostic data capture with directory '/data/db/diagnostic.data'
2017-03-05T00:31:39.643+0530 I NETWORK [thread1] waiting for connections on port 27017
2017-03-05T00:31:40.008+0530 I FTDC [ftdc] Unclean full-time diagnostic data capture shutdown detected, found interim file, some metrics may have been lost. OK
2017-03-05T00:32:03.832+0530 I NETWORK [thread1] connection accepted from 127.0.0.1:49806 #1 (1 connection now open)
2017-03-05T00:32:03.833+0530 I NETWORK [conn1] received client metadata from 127.0.0.1:49806 conn1: { application: { name: "MongoDB Shell" }, driver: { name: "MongoDB Internal Client", version: "3.4.2" }, os: { type: "Darwin", name: "Mac OS X", architecture: "x86_64", version: "16.4.0" } }
2017-03-05T00:32:08.376+0530 I - [conn1] end connection 127.0.0.1:49806 (1 connection now open)
Après cela, ouvrez un autre terminal et tapez simplement «mongo».
Vous trouverez ci-dessous la sortie:
$ mongo
MongoDB Shell version v3.4.2
connecting to: mongodb://127.0.0.1:27017
MongoDB server version: 3.4.2
Votre problème résolu :)
Je suis un utilisateur Windows et j'ai installé MongoDB en novembre 2018 et je ne voulais pas configurer les répertoires data/db. Mais après quelques jours, quand j’ouvre, j’ai un message d’erreur:
MongoDB Shell version v4.0.4
connecting to: mongodb://127.0.0.1:27017
2018-12-05T20:42:40.108+0530 E QUERY [js] Error: couldn't connect to server 127.0.0.1:27017, connection attempt failed: SocketException: Error connecting to 127.0.0.1:27017 :: caused by :: No connection could be made because the target machine actively refused it. :
connect@src/mongo/Shell/mongo.js:257:13
@(connect):1:6
exception: connect failed
Ensuite, j'ai essayé de réparer en utilisant toutes les réponses ci-dessus et je n'ai pas fonctionné. Quand j'ai essayé de courir Mongod c'est dit
MongoDB starting : pid=12220 port=27017 dbpath=C:\data\db\ 64-bit Host=bla
J'ai essayé de changer le chemin de la base de données (vers les fichiers de programme) à l'aide du système de fichiers et également à l'aide de cmd mais ceux-ci ne fonctionnaient pas.
La solution qui a fonctionné pour moi est la suivante:
Ouverture de l'onglet Gestionnaire de tâches (ctrl + shift + esc
) -> Services et il y avait une ligne MongoDB avec l'état arrêté. Puis j'ai cliqué droit et cliqué sur Démarrer et tout fonctionne parfaitement :).
Vous pouvez essayer avec la commande suivante:
Sudo service mongod start
J'ai aussi le même problème alors je me suis fixé par ces deux lignes de code. J'espère que ça aide
systemctl start mongod
systemctl enable mongod
Créez le dossier C: data/db s'il n'existe pas déjà sur votre ordinateur. Il s'avère que MongoDB nécessite l'existence de cette structure de dossiers 'data/db' pour s'exécuter. J'espère que ça aidera quelqu'un.
La cause par moi était l'espace - exécutez ceci dans la console:
df -h
ou plus spécifiquement:
du -hs /var/lib/mongodb/
pour vérifier l’utilisation du disque. Si c'est ~ 99% - juste un peu d'espace et essayez à nouveau!
La réponse de @shakthydoss a bien fonctionné une fois, mais après le deuxième numéro, le fichier .lock n’était plus là, j’en ai créé un vierge et tout a bien fonctionné. Alors vérifiez si le vôtre n'est pas là.
Si vous utilisez la ligne de commande:
cd /var/lib/mongodb
ls
"ls" listera tous les fichiers du dossier, si le fichier mongod.lock n’est pas là, alors:
Sudo touch mongod.lock
Enfin, exécutez la commande.
mongod –-repair
Sudo service mongod start
Le service Mongo devrait bien fonctionner.
Cela se passait avec moi aujourd'hui et je l'ai résolu de la manière suivante.
Machine: J'utilise Windows 10 et j'ai téléchargé la dernière version de MongoDB - Community Edition.
Donc, le problème était que je n'avais pas créé C:\data\db
.
Sans créer C:\data\db
, j'ai ouvert le terminal CMD et démarré la base de données à l'aide de la commande mongod
au terminal
C:\Votre chemin d'installation\bin> Mongod
Et quand j’ai tiré la commande mongo
, j’ai eu le problème.
Twist, j'ai créé les dossiers nécessaires, mais le problème persiste. Et c'est parce que le serveur Mongo était déjà en cours d'exécution. Pour résoudre ce problème, j'ai lancé à nouveau la commande mongod
, qui a automatiquement référencé à C:\data\db
.
D'autres utilisateurs ont suggéré d'ajouter C:\data\db
mais n'ont pas parlé d'exécuter à nouveau mongod
, ce qui a exactement résolu mon problème.
Une autre solution qui a résolu la même erreur pour moi, bien que celle-ci ne le soit peut-être que si vous accédez à mongo (localement) via une connexion SSH via une machine virtuelle (du moins c'est ma configuration), et peut être un problème de variable d'environnement spécifique à Linux:
export LC_ALL=C
De plus, j'ai plus de succès à exécuter Mongo en tant que service démon qu'avec le démarrage du service Sudo. Je crois comprendre que cela utilise des arguments en ligne de commande plutôt que le fichier de configuration, ce qui est probablement un problème avec mon fichier de configuration:
mongod --fork --logpath /var/log/mongodb.log --auth --port 27017 --dbpath /var/lib/mongodb/admin
Tout d’abord, allez à c:\mongodb\bin>
pour activer mongoDB, si vous voyez dans la console que mongo est à l’écoute sur le port 27017, c’est OK Sinon, fermez la console et créez le dossier c:\data\db
et relancez mongod
Tout d'abord, vous devez démarrer mongod server, puis dans un autre terminal, vous devez démarrer mongo Shell.
Pour démarrer, serveur Mongo
1. Si votre chemin est Chemin par défaut (data/db) simple tir mongod in terminal
2. Si votre chemin n'est pas data/db alors vous commandez comme as suivre: mongod --dbpath "voici votre chemin vient" .
Pour démarrer mongo Shell, Il suffit de tirer mongo dans un autre terminal
Si vous obtenez ceci en attente de connexions sur le port 27017 , votre mongo a démarré avec succès.
J'espère que vous pouvez obtenir mon point
Étapes à suivre pour résoudre ce problème sous Windows:
si vous installez par brassage (sur osx) lancez Sudo mkdir /data/db
démarrez le démon mondoDB en tapant mongod
(laissez-le ouvert), puis exécutez mongo en tapant mongo
dans le nouvel onglet du terminal
MAC OS
Vérifier le statut
brew services list
Quelque chose comme:
Name Status User Plist
mongodb stopped
commence le
brew services start mongodb
Essayez à nouveau
mongo
ou mongo --port 27017
Créez simplement un dossier nommé "data" dans le lecteur C et dans le dossier de données, créez un autre dossier nommé "db". Puis exécutez mongod.exe :)
dans mon cas, sous Windows et Ubuntu, je devais créer un dossier /data/db
à la racine. À Ubuntu, j'avais besoin d'une option supplémentaire. donner des permissions pour le répertoire.
les fenêtres
mkdir c:/data/db
ubuntu:
Sudo mkdir -p /data/db
Sudo chmod 700 /data/db
puis courir
Sudo service mongod start
vérifier
Sudo service mongod status
puis courir
mongo
Enfin j'ai eu c'est d'une manière simple ..
ouvrez le terminal et rendez-vous à l’emplacement mongodb. Dans mon cas c'est
e:\mongodb\bin>
et tapez la commande suivante et appuyez sur entrée ..
mongod --config e:\mongodb\mongo.config
Ouvrez un autre terminal et lancez mongodb en utilisant
mongo.exe
Thats it .. vous pouvez utiliser le mongo
C'est une vieille question, mais en tant que débutant, j'ai décidé d'ajouter (avec Webstorm) que vous devez cliquer sur Mongo Explorer (onglet situé à l'extrême droite de votre fenêtre). De là:
-Cliquez sur les paramètres .- Cliquez sur le bouton Parcourir (il ressemble à un bouton portant la mention "...") .- Allez dans Programmes> MongoDB> Server> 3.4> bin> mongo.exe différent de 3.4) - Après cela, cliquez sur le signe plus vert situé à droite. Une fenêtre s'ouvrira - Entrez un nom dans l'emplacement "Etiquette" .- Cliquez sur Appliquer.
Vous devriez maintenant être connecté. Entrer "Mongod" dans le terminal n'est pas suffisant. Vous devez également suivre les étapes ci-dessus.
Mes excuses par avance à ceux d'entre vous qui n'utilisent pas Webstorm! Pas sûr des étapes utilisant d'autres IDE.
J'ai eu la même erreur lors de la connexion à Mongo sur AWS EC2. C'est ce qui a résolu le problème https://serverfault.com/a/347159/62381 Supprimez le bind_ip du fichier de configuration.
Cela me travaille: -
Dans Mongo 3.2 pour fenêtre, vous devez démarrer le service Mongodb. Donc, lancez le Command Prompt as Administrator
puisnet start MongoDB
J'ai eu le même problème pour connecter mongodb après l'installation en utilisant Brew sur Mac OS.
Le problème était aussi mongod.lock
mais auparavant, mongodb 3.6 était installé et le répertoire de la base de données était /usr/local/var/mongodb
. Il contient d’anciens fichiers et mongod.lock
.
Simple, j'ai déplacé mes anciens fichiers de base de données dans un autre dossier et tout supprimé de /usr/local/var/mongodb
Puis redémarré:
brew services restart mongodb
Et ça fonctionne bien maintenant.
j'ai eu le même problème, j'ai supprimé le fichier E:\Mongo Data Files\db\mongod.lock, il a donc commencé à fonctionner. le problème est dû à un arrêt incorrect du serveur. alors le fichier de verrouillage n'est pas propre.
si toutes les solutions ci-dessus ne fonctionnent pas, alors cela pourrait être une aide. Vous avez peut-être déjà été connecté à votre base de données mongodb locale via des boîtes vagabondes.
Supprimez le fichier mongod.lock. Et lancez "mongod -repair". désinstaller/réinstaller le service Mongodod a résolu ce problème pour moi.
Merci.