【问题标题】:MongooseError: Operation users.insertOne() buffering timed out after 10000ms” in Mongo Db atlasMongooseError:操作 users.insertOne() 缓冲在 10000 毫秒后超时”在 Mongo Db 地图集中
【发布时间】:2021-10-15 22:19:13
【问题描述】:

我目前正在使用 node 和 mongoDB 这是我的代码

import dotenv from "dotenv";
import mongoose from "mongoose";

dotenv.config();

mongoose
  .connect(
    `mongodb+srv://OmniBotBuilder:${process.env.DBPASS}${process.env.DBUSER}.kx2vg.mongodb.net/${process.env.DBNAME}?retryWrites=true&w=majority`,
    {
      useUnifiedTopology: true,
      useNewUrlParser: true,
    }
  )
  .catch(() => console.error("Unable to connect to DB"));

mongoose.connection.on("connected", () => {});

const Schema = mongoose.Schema;

const omniGamesSchema = new Schema({
  discordId: Number,
  steamId: Number,
});

const omniGamesModel = mongoose.model("omniGamesSchema", omniGamesSchema);

const createNewUser = (discordId, steamId) => {
  const newUserMap = new omniGamesModel({
    discordId: discordId,
    steamId: steamId,
  });

  newUserMap.save((err) => {
    if (err) {
      console.error(err);
    }
  });
};

export { createNewUser };

我得到的错误是这个

MongooseError: 操作 omnigamesschemas.insertOne() 缓冲在 10000 毫秒后超时 在超时。 (C:\Users\dahiy\OneDrive\Desktop\bots\omni-games\node_modules\mongoose\lib\drivers\node-mongodb-native\collection.js:198:23) 在 listOnTimeout(节点:内部/计时器:557:17) 在 processTimers (node:internal/timers:500:7)

【问题讨论】:

标签: node.js mongodb mongoose discord.js mongodb-atlas


【解决方案1】:

这个问题通常是因为:

  • 错误的身份验证,意思是 mongo 路径字符串错误,所以可能要仔细检查您的通行证和用户名

  • 检查允许从 mongo 网站访问数据库的 IP,如果您希望从任何地方访问它,只需使用 IP:0.0.0.0/0

  • 您的互联网连接速度可能很慢,以至于无法连接到数据库

希望这对您有所帮助! :)

【讨论】:

  • 你的第三点对我有用,因为当我将我的电脑与移动热点连接时它开始工作
  • 很高兴它有帮助!
  • 它有所帮助,但我的网络比我的移动热点快得多,有点奇怪,它在移动热点上运行良好但在 Wi-Fi 上运行良好
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-02-26
  • 2021-08-23
  • 2021-11-15
  • 2021-12-08
  • 2021-04-01
  • 2021-06-30
相关资源
最近更新 更多