在ubuntu上Mongo中的配置损坏 - 无法使用正确的配置

时间:2016-11-01 16:21:23

标签: mongodb configuration

我设法打破了在Ubuntu服务器上运行的稳定的Mongo实例。

似乎没有使用正确的配置启动服务。

正在运行mongod会给我以下内容:

2016-11-01T16:06:27.853+0000 I STORAGE [initandlisten] exception in initAndListen: 29 Data directory /data/db not found., terminating

因此,当我尝试运行mongo shell时,我得到了:

2016-11-01T16:06:48.476+0000 W NETWORK Failed to connect to 127.0.0.1:27017, reason: errno:111 Connection refused

/etc/mongod.conf中的配置文件将dbpath声明为/var/lib/mongod,其中已经有一堆dbses(正在运行!),端口为3306.这显然不是错误上面的消息指向。

我尝试使用--config /etc/mongod.conf使用此配置文件运行mongod,但我明白了:

2016-11-01T16:09:12.530+0000 F CONTROL Failed global initialization: FileNotOpen Failed to open "/var/log/mongodb/mongod.log"

我可以采取哪些步骤来恢复正确的dbpath和端口上的原始服务?

/etc/init/mongod.conf上有一个暴发户文件,但服务器重启没有任何影响。

感谢。

1 个答案:

答案 0 :(得分:0)

当在磁盘空间较小的磁盘上运行带有数据文件的mongod时(通常在我总是拥挤的开发笔记本电脑上出现此问题),您可能会遇到上述情况,但会出现一些令人误解的症状。从内存来看,我/我们的情况所需的空间约为几GB,通常足以容纳3 GB。

如果合适,您可以选择删除文件,也可以忽略(由于您不在生产环境中),请使用--smallfiles选项,请参见documentation

(我刚刚注意到这个问题大约有2年的历史了……可能只与mmapv1引擎有关,这是自3.2以来的默认值。写了它之后,无论如何我都会发布这个可能的答案,大概是赢了虽然现在没有多大用处:))