为什么我无法连接到猫鼬服务器

Why can I not connect to the mongoose server

我已经在 db.js 文件中实现了下面的代码来请求 mongoose 并连接到 mongoose 服务器。下面的代码在 db.js 文件

var mongoose = require( 'mongoose' );
var dbURI = 'mongodb://localhost/CaribbeanDb';
mongoose.connect(dbURI);

mongoose.connection.on('connected', function (){
console.log('Mongoose connected to ' + dbUEI); 
});

mongoose.connection.on('error', function (err){
console.log('Mongoose connection error:' + err); 
});
mongoose.connection.on('disconnected', function (){
console.log('Mongoose disconnected:'); 
});

当我尝试连接到 mongoose 时会出现此错误

node:16880) DeprecationWarning: current URL string parser is deprecated, and will be removed in a future version. To use the new parser, pass option { useNewUrlParser: true } to MongoClient.connect.
Mongoose disconnected:
Mongoose connection error:MongoNetworkError: failed to connect to server [localhost:27017] on first connect [MongoNetworkError: connect ECONNREFUSED 127.0.0.1:27017]

所以我将 db.js 文件中的第二行代码更改为下面的代码

mongoose.connect('mongodb://localhost:27017/CaribbeanDb', {useNewUrlParser: true})

更改后...我现在在下面收到此错误

Mongoose connection error:MongoNetworkError: failed to connect to server [localhost:27017] on first connect [MongoNetworkError: connect ECONNREFUSED 127.0.0.1:27017]

我已经尝试做进一步的研究来解决这个错误。我遇到了下面的一些命令。输入 git 终端解决问题,但在终端内找不到命令。

$ sudo rm /data/db/mongod.lock
$ sudo mongod --dbpath /data/db/ --repair
$ sudo mongod --dbpath /data/db/ --journal

任何建议..因为我 运行 不知道我哪里出错了?

你的机器上安装了MongoDB吗?

Mongoose 是一个 ORM,而 MongoDB 是实际的数据库,这使得它成为 Mongoose 的依赖项。

如果您使用的是 macOS,则可以 运行:

mongo -version

如果提示您没有,请使用 Homebrew 安装:

brew install mongo
sudo mkdir -p /data/db
sudo chown -R `id -un` /data/db

启动 MongoDB 守护进程:

mongod