MongoError: topology was destroyed解决方法
2024-08-23 08:46:34
MongoError: topology was destroyed
分析得出,出现这个问题是因为,当mongodb尝试写入某个数据的时候,连接被中断了!
解决方法:检查代码中是否存在操作数据的过程中,意外地执行了client.close()
关闭连接了mongod数据库,如果有则将client.close
删除,只在最后才关闭连接。
如下代码所示就是简单的错误:
const MongoClient = require('mongodb').MongoClient
const url = "mongodb://localhost:27017"
const dbName = 'express-project'
// 连接数据库
MongoClient.connect(url, { useNewUrlParser: true }, (err, client) => {
if (err) throw err
console.log('数据库已连接')
const db = client.db(dbName)
// -----------!!!!!!!!!!!这里不应该关闭连接,因为下面还要创建一个集合!!!!!!!!!!!---------------
client.close()
// 创建集合collection
db.createCollection("user", (err, res) => {
if (err) throw err
console.log('创建集合')
})
client.close()
})
出现了两个close(),出错!需要将中途意外关闭数据库的语句删掉即可解决!
最新文章
- CartO
- AngularJS安装配置与基础概要整理(上)
- Javascript history pushState onpopstate方法做AJAX SEO
- Android手机中获取手机号码和运营商信息
- NAS4Free 配置BT下载
- struts之拦截器
- 如何为CentOS 7配置静态IP地址
- java常用数据库连接池 (DBCP、c3p0、Druid) 配置说明
- log4j配置,输出sql到控制台
- 遍历List过程中删除操作报java.util.ConcurrentModificationException错误
- 支付宝WAP支付总结
- 协程.md
- Android开发之获取手机SIM卡信息
- 分享一篇IBN(Intent-based networking)调研报告
- Java多线程(三) —— 线程并发库之总体架构
- easyui的datebox只显示年月
- 2017ACM暑期多校联合训练 - Team 2 1001 HDU 6045 Is Derek lying? (模拟)
- eclipse 编译tomcat8.0.26的源码
- 在CentOS实现mysql数据库的自动备份
- NodeJS解析客户端请求的body中的内容