之前在mongodb搞了个免费的512MB的mongodb数据库,刚好今天要搭建一个nodejs项目需要的数据库是mongodb,项目里的数据库连接的是本地localhost,因为是第一次接触nodejs + mongodb,以为改个IP地址就可以了,没想到折腾了好久都没搞懂。
然后Search了好多教程大多都是本地连接,最终还是找到了,连接好以后需要用mongorestore恢复数据,又遇到了一个坑,运行mongorestore命令需要安装mongo-tools工具才可以,然后又安装了mongo-tools,最终完美连接并导入。
Node.js连接远程mongodb代码
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| 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代码
1 2 3 4 5 6 7 8 9 10 11
| 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代码
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| 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代码
1 2 3 4 5 6 7 8 9 10 11
| 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("执行数据库重置成功!"); } }, );
|