当前位置: 首页 > 知识库问答 >
问题:

Node.js服务器未连接到本地mongoDB实例

凌成天
2023-03-14

我有一个节点。尝试连接到mongodb的js服务器(使用mongoose):

mongoose.connect('mongodb://127.0.0.1:27017/ordry', {useNewUrlParser: true, useFindAndModify: false, useCreateIndex: true}).then(result =>{ // 127.0.0.1:27017
    console.log("Successfully connected to db!");
}).catch(error =>{
    console.log("Error connecting to the database!")
})

尽管mongodb已启动并运行,但连接失败。

我得到以下日志:

7月18日星期四13:24:50.124[initandlisten]选项:{dbpath:“/home/pi/mongodb/”}

Thu Jul 18 13:24:50.166[initandlisten]正在等待端口27017上的连接

Thu Jul 18 13:24:50.166[WebVR]管理web控制台正在等待端口28017上的连接

Thu Jul18 13:25:45.647从127.0.0.1:501881接受[initand听]连接(1连接现在打开)

Thu Jul18 13:25:45.742[Conn1]结束连接127.0.0.1:50188(现在打开0个连接)

从Node.js编辑日志:

[nodemon] starting `node ./server/server.js`
{ MongoNetworkError: failed to connect to server [127.0.0.1:27017] on first connect [MongoError: Server at 127.0.0.1:27017 reports maximum wire version 0, but this version of the Node.js Driver requires at least 2 (MongoDB 2.6)]
    at Pool.<anonymous> (/home/pi/Desktop/Ordry API/node_modules/mongodb-core/lib/topologies/server.js:431:11)
    at Pool.emit (events.js:198:13)
    at connect (/home/pi/Desktop/Ordry API/node_modules/mongodb-core/lib/connection/pool.js:557:14)
    at callback (/home/pi/Desktop/Ordry API/node_modules/mongodb-core/lib/connection/connect.js:109:5)
    at runCommand (/home/pi/Desktop/Ordry API/node_modules/mongodb-core/lib/connection/connect.js:140:7)
    at Connection.messageHandler (/home/pi/Desktop/Ordry API/node_modules/mongodb-core/lib/connection/connect.js:334:5)
    at Connection.emit (events.js:198:13)
    at processMessage (/home/pi/Desktop/Ordry API/node_modules/mongodb-core/lib/connection/connection.js:364:10)
    at Socket.<anonymous> (/home/pi/Desktop/Ordry API/node_modules/mongodb-core/lib/connection/connection.js:533:15)
    at Socket.emit (events.js:198:13)
    at addChunk (_stream_readable.js:288:12)
    at readableAddChunk (_stream_readable.js:269:11)
    at Socket.Readable.push (_stream_readable.js:224:10)
    at TCP.onStreamRead [as onread] (internal/stream_base_commons.js:94:17)
  name: 'MongoNetworkError',
  errorLabels: [ 'TransientTransactionError' ],
  [Symbol(mongoErrorContextSymbol)]: {} }

我有点不确定为什么它在这里不起作用——尤其是在windows上一切正常的情况下。

我在我的覆盆子皮3b上用覆盆子。

任何帮助都将不胜感激。

共有2个答案

闻人梓
2023-03-14

您会收到以下错误消息:

reports maximum wire version 0, but this version of the Node.js Driver requires at least 2 (MongoDB 2.6)

警告您至少将MongoDB版本升级到2.6,因为MongoDB所依赖的线库使用的驱动程序不支持它。

Raspbian提供的MongoDB(2.4)版本似乎不再受支持,因此运行MongoDB服务器os a Raspberry Pi的最佳方法是安装另一个Linux发行版,如Ubuntu或Arch Linux。

权弘新
2023-03-14

通常发生这种情况是因为在尝试启动mongo shell之前没有启动mongod进程。

1) 删除mongod。从C:\Program Files\MongoDB\Server\4.0\data锁定文件

2)启动mon神服务器

在另一个终端-启动mongo shell

1) 蒙戈

 类似资料:
  • 我正在尝试从spring boot starter连接到本地安装的Neo4j服务器- 服务器安装默认通过Homebrew。 Gradle构建文件 一个pplication.java 没有做任何其他更改。 实际误差:

  • 我在HTTPS网站上启用了个人用户脚本。userscript使用Socket.io客户端API连接到我的PC中的Node.js TCP服务器 服务器注意到客户端正在连接到服务器,但客户端没有注意到连接,而是从浏览器控制台接收此错误 我的服务器代码

  • 我正在运行Docker容器,其中运行一个jar文件。 此jar文件需要访问Elasticsearch以读取数据,并且此Elasticsearch服务安装在本地计算机上(不在Docker容器中) 我需要从Docker容器连接到本地Elasticsearch服务以使其正常工作 我在Dockerfile中写了EXPOSE 9200 9300 service-port,我的Docker run命令如下,

  • 问题内容: 错误2002(HY000):无法通过套接字’/var/run/mysqld/mysqld.sock’(2)连接到本地MySQL服务器 我尝试了在互联网上找到的所有内容,但是无法解决在Ubuntu 11.04上出现的问题。 我尝试了这些事情: 使用手动启动mysqld 使用启动mysqld 检查它是否正在使用并获得结果 在手动创建文件 授予用户权限 试图删除并重新安装,但仍然无法正常工作

  • C:\用户\跨度t 2\下载\apache-cassandra-3.11.5\bin 启动 Cassandra 服务器 C:\用户\跨度t 2\下载\apache-cassandra-3.11.5\bin 连接错误:('无法连接到任何服务器',{'127.0.0.1':错误(10061,"尝试连接到[('127.0.0.1',9042)]。最后一个错误:无法进行连接,因为目标机器主动拒绝它")})

  • 所以我现在正在编写一个web应用程序,我需要数据库,所以我决定使用mongodb和Mongoose。到目前为止,我在localhost上测试了所有的内容,它都起作用了,但我想把数据移到服务器上。我听说过Atlas,自己注册并“上传”了数据。 现在我想通过Node.js应用程序连接到集群。 我在连接您的应用程序点得到了mongodb Atlas站点的字符串 然后我交换了我的密码。 这也没用。 这是错