我已经在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:');
});
当我尝试连接到猫鼬时会出现此错误
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 terminal以解决问题,但是在终端内找不到命令。
$ sudo rm /data/db/mongod.lock
$ sudo mongod --dbpath /data/db/ --repair
$ sudo mongod --dbpath /data/db/ --journal
有什么建议..当我快要出问题的主意了吗?
答案 0 :(得分:0)
您的计算机上是否安装了MongoDB?
Mongoose是一个ORM,而MongoDB是实际的数据库,这使其成为Mongoose的依赖项。
如果您使用的是macOS,则可以运行:
!empty()
如果您发现自己没有它,请安装Homebrew:
mongo -version
启动MongoDB守护程序:
brew install mongo
sudo mkdir -p /data/db
sudo chown -R `id -un` /data/db