Node.js连接远程mongodb并利用mongorestore远程恢复数据库

2022-01-17 10:09:28 浏览数 (1)

之前在mongodb搞了个免费的512MB的mongodb数据库,刚好今天要搭建一个nodejs项目需要的数据库是mongodb,项目里的数据库连接的是本地localhost,因为是第一次接触nodejs mongodb,以为改个IP地址就可以了,没想到折腾了好久都没搞懂。 然后Search了好多教程大多都是本地连接,最终还是找到了,连接好以后需要用mongorestore恢复数据,又遇到了一个坑,运行mongorestore命令需要安装mongo-tools工具才可以,然后又安装了mongo-tools,最终完美连接并导入。

Node.js连接远程mongodb代码

代码语言:javascript复制
const mongoose = require('mongoose');
const db = mongoose.connect("mongodb srv://数据库用户名:数据库密码@IP地址:端口/数据库名", {
    useNewUrlParser: true,
    useUnifiedTopology: true,
    useFindAndModify: false
}, function (error) {
    if (error) {
        console.log("连接远程mongo数据库失败:"   error.message)
    } else {
        console.log("连接远程mongo数据库成功")

    }
});
module.exports = db;

mongorestore恢复远程mongodb代码

代码语言:javascript复制
var process = require('child_process');
process.exec('mongorestore --uri="mongodb srv://数据库用户名:数据库密码@IP地址:端口/数据库名" 需要恢复的数据文件目录', function (error, stdout, stderr) {
  if (error) {
    console.log("执行重置数据库失败, 异常信息:"   error.message)
  } else {
    console.log("执行数据库重置成功!")
  }
})

Node.js连接本地mongodb代码

代码语言:javascript复制
const mongoose = require('mongoose');
const db = mongoose.connect("mongodb://localhost:端口/数据库名", {
    useNewUrlParser: true,
    useUnifiedTopology: true,
    useFindAndModify: false
}, function (error) {
    if (error) {
        console.log("连接本地mongo数据库失败:"   error.message)
    } else {
        console.log("连接本地mongo数据库成功")

    }
});
module.exports = db;

mongorestore恢复本地mongodb代码

代码语言:javascript复制
var process = require('child_process');
process.exec('mongorestore -h 127.0.0.1:27017 -d  数据库名 需要恢复的数据文件目录 --drop', function (error, stdout, stderr) {
  if (error) {
    console.log("执行重置数据库失败, 异常信息:"   error.message)
  } else {
    console.log("执行数据库重置成功!")
  }
})

0 人点赞