错误:子进程失败,退出错误号48

时间:2016-12-13 03:26:47

标签: mongodb

错误48对我来说是个新错误。

我在尝试输入mongo时也遇到错误

Error: network error while attempting to run command 'isMaster' on host '127.0.0.1:27017'

v3.2.10
git version: 79d9b3ab5ce20f51c272b4411202710a082d0317
allocator: tcmalloc
modules: none
build environment:
  distmod: ubuntu1604
  distarch: x86_64
  target_arch: x86_64

我尝试用

启动mongo
sudo mongod --fork --port 27017 --replSet replset --logpath ~/log/mongo.log

4 个答案:

答案 0 :(得分:4)

日志文件说什么?当一个进程已经运行了你用来启动mongod进程的端口号时,通常会出现此错误,这里是27017。

您可以运行以下命令来检查使用端口的spid

netstat -ntulp | grep 27017

答案 1 :(得分:1)

我习惯了得到类似的错误(错误编号48)。我通常这样跑:

mongod --config /apps/data/appdb/appdb.conf --fork

在我的" appdb.conf"有一个名为" Bind Address"这指向" 0.0.0.0"我只是将其更改为服务器/机器的实际IP(如果您运行 hostname -i 命令,则可以找到它)。保存文件并尝试上面的" fork"命令和工作就像一个魅力。希望这会有所帮助。

答案 2 :(得分:0)

首先,对于第一个答案,您不应该使用-9杀死Mongodb进程。

请参阅以下文档中的“使用kill”部分: https://docs.mongodb.com/manual/tutorial/manage-mongodb-processes/

也许尝试查找并删除mongod.pid(/your/path/mongodb/mongod.pid),然后重新启动Mongodb。

答案 3 :(得分:0)

在ec2上,请勿使用bindip列表中的public ip。它允许mongod不仅侦听来自本地主机的传入请求。您必须使用私有IP。 您应该能够使用专用IP从网络内部进行连接。