提问者:小点点

MongoDB-使用代码48关闭


我正在尝试启动MongoDB,但终端返回以下错误:

2017-02-06T16:26:27.037+0000 I CONTROL  [initandlisten] MongoDB starting : pid=25184 port=27017 dbpath=/data/db 64-bit host=Janiss-MacBook-Pro.local
2017-02-06T16:26:27.037+0000 I CONTROL  [initandlisten] db version v3.4.1
2017-02-06T16:26:27.037+0000 I CONTROL  [initandlisten] git version: 5e103c4f5583e2566a45d740225dc250baacfbd7
2017-02-06T16:26:27.037+0000 I CONTROL  [initandlisten] OpenSSL version: OpenSSL 1.0.2k  26 Jan 2017
2017-02-06T16:26:27.037+0000 I CONTROL  [initandlisten] allocator: system
2017-02-06T16:26:27.037+0000 I CONTROL  [initandlisten] modules: none
2017-02-06T16:26:27.037+0000 I CONTROL  [initandlisten] build environment:
2017-02-06T16:26:27.037+0000 I CONTROL  [initandlisten]     distarch: x86_64
2017-02-06T16:26:27.037+0000 I CONTROL  [initandlisten]     target_arch: x86_64
2017-02-06T16:26:27.037+0000 I CONTROL  [initandlisten] options: {}
2017-02-06T16:26:27.038+0000 E NETWORK  [initandlisten] listen(): bind() failed Address already in use for socket: 0.0.0.0:27017
2017-02-06T16:26:27.038+0000 E NETWORK  [initandlisten]   addr already in use
2017-02-06T16:26:27.038+0000 E NETWORK  [initandlisten] Failed to set up sockets during startup.
2017-02-06T16:26:27.038+0000 E STORAGE  [initandlisten] Failed to set up listener: InternalError: Failed to set up sockets
2017-02-06T16:26:27.038+0000 I NETWORK  [initandlisten] shutdown: going to close listening sockets...
2017-02-06T16:26:27.038+0000 I NETWORK  [initandlisten] shutdown: going to flush diaglog...
2017-02-06T16:26:27.039+0000 I CONTROL  [initandlisten] now exiting
2017-02-06T16:26:27.039+0000 I CONTROL  [initandlisten] shutting down with code:48

如果这很重要,我正在使用Laravel代客。


共3个答案

匿名用户

您似乎已经在要启动mongoDB的端口上运行了一个进程:

listen(): bind() failed Address already in use for socket: 0.0.0.0:27017
2017-02-06T16:26:27.038+0000 E NETWORK  [initandlisten]   addr already in use

您可以尝试使用以下命令终止在该端口上运行的进程:sudo killsudo lsof-t-i: 27017

或者如果您有另一个程序使用该端口,则为mongoDB定义另一个端口。
要在其默认端口(27017)以外的端口上运行mongob,请在从终端启动mongob时使用--port 27018参数

匿名用户

如果您使用的是mac,那么您可以简单地杀死在端口27017上运行的进程,这在大多数情况下是mongoDB进程。

只需运行命令。

npx kill-port 27017

之后,您可以像往常一样运行mongod命令。

或者如果您使用的是windows,请按照以下步骤操作

  • 以管理员身份运行命令行
  • netstat-ano|findstr: 27017
  • 你最终会得到pid,即要杀死的进程id
  • taskkill/PID

享受!

匿名用户

这对我很管用

然后我换了MongoDB的港口

sudo mongod --port 27018

现在mongod服务器暂时运行

sudo mongod