mongod 命令执行发现已经有进程在运行mongod数据库--errno:48 Address already in use for socket: 0.0.0.0:27017


错误信息:

listen(): bind() failed errno:48 Address already in use for socket: 0.0.0.0:27017

 27017端口已经被占用

完整error信息

2016-10-24T23:46:56.314+0800 E NETWORK  [initandlisten] listen(): bind() failed errno:48 Address already in use for socket: 0.0.0.0:27017

2016-10-24T23:46:56.314+0800 E NETWORK  [initandlisten]   addr already in use

2016-10-24T23:46:56.314+0800 E STORAGE  [initandlisten] Failed to set up sockets during startup.

2016-10-24T23:46:56.314+0800 I CONTROL  [initandlisten] dbexit:  rc: 48

 

处理方法:终端中输入:

ps aux | grep mongod

找到对应进程id,杀死:

kill -9 pid

如下图,

再次执行 mongod 命令就可以开启 mongodb 服务 

window 下解决方法:

http://stackoverflow.com/questions/34709062/failed-to-set-up-sockets-during-startup-dbexit-rc-48-error-in-mongodb/35650275

Find the process running on port 27017:

C:\Users\hughes> netstat -aon | findstr 27017 TCP 0.0.0.0:27017 0.0.0.0:0 LISTENING 3344

The last column shows the PID (3344). Find the process name for that PID:

C:\Users\hughes> tasklist /fi "pid eq 3344" Image Name PID Session Name Session# Mem Usage ========================= ======== ================ =========== ============ VirtualBox.exe 3344 Console 1 101,908 K

For me it turned out that VirtualBox's port forwarding was the issue.

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM