Node.js 蒙哥德没有跑步。。E网络[initandlisten]侦听():绑定()失败错误号:98地址已用于套接字:0.0.0.0:27017

Node.js 蒙哥德没有跑步。。E网络[initandlisten]侦听():绑定()失败错误号:98地址已用于套接字:0.0.0.0:27017,node.js,mongodb,sockets,ubuntu,mongoose,Node.js,Mongodb,Sockets,Ubuntu,Mongoose,我正在mean.io中开发一个webapp,我一直在关注这个视频教程 我已经在我的ubuntu系统中安装了mongodb,并且在教程中通过sudo npm install mongoose安装了mongoose(我必须给sudo系统提示) 安装好后,我打开另一个终端,键入mongod mukund@mukund-ThinkPad-Edge-E431:~$ mongod 2015-07-14T12:22:48.497+0530 E NETWORK [initandlisten] listen(

我正在mean.io中开发一个webapp,我一直在关注这个视频教程

我已经在我的ubuntu系统中安装了mongodb,并且在教程中通过
sudo npm install mongoose
安装了mongoose(我必须给
sudo
系统提示)

安装好后,我打开另一个终端,键入
mongod

mukund@mukund-ThinkPad-Edge-E431:~$ mongod
2015-07-14T12:22:48.497+0530 E NETWORK  [initandlisten] listen(): bind() failed errno:98 Address already in use for socket: 0.0.0.0:27017
2015-07-14T12:22:48.497+0530 E NETWORK  [initandlisten]   addr already in use
2015-07-14T12:22:48.498+0530 I STORAGE  [initandlisten] exception in initAndListen: 29 Data directory /data/db not found., terminating
2015-07-14T12:22:48.498+0530 I CONTROL  [initandlisten] dbexit:  rc: 100
看看它的输出

mukund@mukund-ThinkPad-Edge-E431:~$ mongod
2015-07-14T12:22:48.497+0530 E NETWORK  [initandlisten] listen(): bind() failed errno:98 Address already in use for socket: 0.0.0.0:27017
2015-07-14T12:22:48.497+0530 E NETWORK  [initandlisten]   addr already in use
2015-07-14T12:22:48.498+0530 I STORAGE  [initandlisten] exception in  initAndListen: 29 Data directory /data/db not found., terminating
2015-07-14T12:22:48.498+0530 I CONTROL  [initandlisten] dbexit:  rc: 100
然后我在askubuntu和stackoverflow中搜索修复程序

我打了这个

mukund@mukund-ThinkPad-Edge-E431:~$ netstat -an | grep :27017
tcp        0      0 127.0.0.1:27017         0.0.0.0:*               LISTEN     
tcp        0      0 127.0.0.1:56348         127.0.0.1:27017         ESTABLISHED
tcp        0      0 127.0.0.1:56350         127.0.0.1:27017         ESTABLISHED
tcp        0      0 127.0.0.1:27017         127.0.0.1:56349         ESTABLISHED
tcp        0      0 127.0.0.1:27017         127.0.0.1:56351         ESTABLISHED
tcp        0      0 127.0.0.1:27017         127.0.0.1:56347         ESTABLISHED
tcp        0      0 127.0.0.1:56364         127.0.0.1:27017         ESTABLISHED
tcp        0      0 127.0.0.1:56349         127.0.0.1:27017         ESTABLISHED
tcp        0      0 127.0.0.1:56351         127.0.0.1:27017         ESTABLISHED
tcp        0      0 127.0.0.1:27017         127.0.0.1:56364         ESTABLISHED
tcp        0      0 127.0.0.1:27017         127.0.0.1:56350         ESTABLISHED
tcp        0      0 127.0.0.1:56347         127.0.0.1:27017         ESTABLISHED
tcp        0      0 127.0.0.1:27017         127.0.0.1:56348         ESTABLISHED
然后

然后,正如在修复中所说,我杀死了第5358页,然后再次运行
mongod

mukund@mukund-ThinkPad-Edge-E431:~$ mongod
2015-07-14T12:22:48.497+0530 E NETWORK  [initandlisten] listen(): bind() failed errno:98 Address already in use for socket: 0.0.0.0:27017
2015-07-14T12:22:48.497+0530 E NETWORK  [initandlisten]   addr already in use
2015-07-14T12:22:48.498+0530 I STORAGE  [initandlisten] exception in initAndListen: 29 Data directory /data/db not found., terminating
2015-07-14T12:22:48.498+0530 I CONTROL  [initandlisten] dbexit:  rc: 100
这里怎么了?通过npm命令安装mongoose是否导致了问题

还有一件事要提的是,我仍然可以通过
mongo
命令连接到mogodb数据库

请找个人帮忙

我终于做到了

使用重新安装mongodb

sudo apt get install mongodb

然后我运行
mongod
时出错,说路径未设置,所以我设置了路径


然后运行
mongo
,一切正常

如果您使用
apt get
安装mongodb,它会创建一个服务,在计算机启动时自动启动。它也会在安装完成后立即启动。您可以使用
sudo service start/stop/restart mongodb
停止、启动或重新启动它(在您的系统上可能是“mongod”)

如果您想更改它的启动方式,请查看/etc/init.d中的服务配置。服务使用的实际mongo配置位于/etc/mongod.conf中。如果你看那里,你会看到一条线

 dbPath: /var/lib/mongodb

这定义了数据库实际存储的位置

如果
mongod
已在运行,则无需再次启动它。刚开始使用Mongoose。我可以重新启动mongod吗?看起来你想要杀死的进程ID是1067,而不是5358?你的操作系统可能为你提供了正确停止/启动/重新启动mongod的工具(可能是Ubuntu上的
服务重新启动mongodb
,不确定)。