【現象】
Node.js(express使用)アプリケーションからMongoDB Atlasに構築したDBとデータのやりとりをしたいのですが、接続する箇所で以下のエラーが発生します。
console
1Error: querySrv EREFUSED _mongodb._tcp.cluster0.bxkz1.mongodb.net 2 at QueryReqWrap.onresolve [as oncomplete] (dns.js:203:19) { 3 errno: 'EREFUSED', 4 code: 'EREFUSED', 5 syscall: 'querySrv', 6 hostname: '_mongodb._tcp.cluster0.bxkz1.mongodb.net' 7}
以下がアプリケーション内で接続を行う箇所です。
javascript
1-- server.js 2const mongoose = require('mongoose'); 3 4var url = 'mongodb+srv://<ユーザー名>:<パスワード>@cluster0.bxkz1.mongodb.net/myFirstDatabase?retryWrites=true&w=majority'; 5 6mongoose.connect(url, {useUnifiedTopology:true, useNewUrlParser:true}) 7 .catch(err => console.log(err)); 8 9const db = mongoose.connection; 10db.once('open', () => console.log('Successfully connected to MongoDB'));
【確認した内容】
・server.jsの<ユーザー名>と<Password>に誤りはありませんでした。
・Atlas側の"Network Access"には「0.0.0.0/0 (includes your current IP address)」を設定しているので、IPによる制限は内容に思います。
・端末のファイアーウォールもオフになっていることも確認しました。
・ローカルにインストールしているMongoDBへのアクセスはできました。
#####【実行バージョン】
・Node.js : 14.8.0
・express : 4.16.1
・MongoDB : 4.4.10
・Mac OS : 11.6.1
どなたかアドバイスを頂けませんでしょうか?
よろしくお願いいたします。
あなたの回答
tips
プレビュー