Il semble que je ne puisse plus me connecter à mon cluster gratuit Mongo Atlas. Tout fonctionnait et j'ai des données qui ont été collectées lorsque je regarde le site Web MongoDB, donc je n'ai aucune idée pourquoi cela a cessé de fonctionner et ne peut plus se connecter. Mon site entier ne se charge pas.
Voici l'erreur que j'obtenais:
{ Error: querySrv ENODATA _mongodb._tcp.blog-cluster-0hb5z.mongodb.net
at QueryReqWrap.onresolve [as oncomplete] (dns.js:197:19)
errno: 'ENODATA',
code: 'ENODATA',
syscall: 'querySrv', Blog/app.js:54:14
hostname: '_mongodb._tcp.blog-cluster-0hb5z.mongodb.net' }
Dans certains cas, cela se produit lorsque votre adresse IP n'est pas sur liste blanche dans le cluster MongoDB Atlas. C'est pourquoi cela fonctionne avec votre adresse IP à la maison où vous avez initialement créé votre compte, mais ne fonctionne pas dans un café WIFI ou ailleurs.
Assurez-vous donc que votre adresse IP actuelle est ajoutée à votre cluster MongoDB.
Pour moi, ce problème ne se produisait que dans un café Starbucks, et c'était quelque chose de aléatoire, OpenDNS ne fonctionnait pas pour moi ni pour Google DNS ou tout autre essayé, drôle parce que cela fonctionne très bien à la maison. Auparavant, j'utilisais le format de chaîne mongodb + srv pour me connecter à l'intérieur de "uri" en utilisant Mongoid et Ruby avec un fichier de configuration mongoid.yml.
Afin de résoudre ce problème, assurez-vous de suivre la configuration décrite dans ce lien https://docs.atlas.mongodb.com/driver-connection/ (exemple mongoïde)
production:
# Configure available database clients. (required)
clients:
# Defines the default client. (required)
default:
# Defines the name of the default database that Mongoid can connect to.
# (required).
database: 'myDatabaseName'
# Provides the hosts the default client can connect to. Must be an array
# of Host:port pairs. (required)
hosts:
- mycluster0-shard-00-00.mongodb.net:27017
- mycluster0-shard-00-01.mongodb.net:27017
- mycluster0-shard-00-02.mongodb.net:27017
options:
# The name of the user for authentication.
user: kay
# The password of the user for authentication.
password: myRealPassword
# The database or source to authenticate the user against. If the database
# specified above is not admin, admin MUST be specified here.
auth_source: admin
# All Atlas servers use SSL. (default: false)
ssl: true
J'ai rencontré ce problème lorsque j'ai essayé d'accéder à mon MongoDB Atlas dans un café. Il fonctionnait parfaitement auparavant, mais il me donnait soudain cette erreur exacte. Je ne sais pas pourquoi, je ne peux pas vous donner tous les détails, mais ce qui l'a corrigé pour moi allait à mon cluster et se connectait avec chaîne de connexion standard. J'ai copié et collé cette chaîne de connexion plus longue et après avoir entré mon mot de passe et l'avoir configuré, cela a fonctionné pour moi. J'espère que cela a aidé.