社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  MongoDB

如何修复MongoDB连接上的“mongopareserror:Multiple text records not allowed at…”

Andrea Anfuso • 5 年前 • 838 次点击  

这是我第一次在这里写作,我的英语说得不好,所以如果我错了,请用一种好的方式批评我。

所以,问题是 当我重新开始 我的node.js在启动之后, 我知道这个错误 我要等10/20秒才能重启数据库连接。

错误:

[nodemon] starting `node server.js`
Not Connected:  { MongoParseError: Multiple text records not allowed
    at QueryReqWrap.dns.resolveTxt [as callback] (/Users/guy/Desktop/Progetto PWM/progetto/node_modules/mongodb-core/lib/uri_parser.js:93:27)
    at QueryReqWrap.onresolve [as oncomplete] (dns.js:198:10)
  name: 'MongoParseError',
  [Symbol(mongoErrorContextSymbol)]: {} }

我正在学习一个视频教程,讲解 节点 与MongoDB的连接,这些是我的依赖项:

"body-parser": "^1.19.0",
"dotenv": "^8.0.0",
"express": "^4.17.1",
"mongoose": "^5.6.7",
"morgan": "^1.9.1"

还有我的 .env环境 文件包含:

MONGO_URI= mongodb+srv://<name>:<password>@myproject-0aqq2.mongodb.net/test?retryWrites=true&w=majority

括号里有我的数据。

编辑

这是我用来连接的代码

mongoose.connect(process.env.MONGO_URI, {useNewUrlParser: true})
.then(() => console.log("Connected"))
.catch(err => {
  console.log("Not Connected: ", err);
});
Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/52890
 
838 次点击  
文章 [ 1 ]  |  最新文章 5 年前
coderwurst
Reply   •   1 楼
coderwurst    5 年前

解决这个问题的方法是使用 Standard Connection String Format for Sharded Clusters 如文件所述:

mongodb://<user>:<password>@mongos0.example.com:27017,mongos1.example.com:27017,mongos2.example.com:27017/admin

@mongos0.example.com:27017 将替换为主主机名,并替换为其后的两个辅助主机。您可以在Altas Web界面的集群概览中获取3个主机的地址和端口。请确保用要连接的数据库的名称替换/admin。

这是推荐用于mongoose的字符串连接格式(3.4)-我向Mongoo支持人员检查了这个,他们非常有帮助!