【发布时间】:2016-12-01 08:54:06
【问题描述】:
运行 mongod 时,我收到非严重错误
[HostnameCanonicalizationWorker] Failed to obtain address information for hostname flimflamjims-MacBook-Pro.local: nodename nor servname provided, or not known
这个问题在堆栈溢出上有很好的记录,解决方案通常建议编辑/etc/hosts 以指定地址127.0.0.1。这确实解决了这个问题,但是作为替代我想指定一个配置文件。
按照 Homebrew 的说明,我尝试运行 mongod --config /usr/local/etc/mongod.conf。运行命令后,进程挂起,没有日志打印到终端。
mongod.conf 由 Homebrew 自动创建,其内容为:
systemLog:
destination: file
path: /usr/local/var/log/mongodb/mongo.log
logAppend: true
storage:
dbPath: /usr/local/var/mongodb
net:
bindIp: 127.0.0.1
当我从 /usr/local/var/log/mongodb/ 中删除 mongod.conf 并再次运行 mongod --config /usr/local/etc/mongod.conf 时,我收到错误:
Error reading config file: No such file or directory
try 'mongod --help' for more information`
所以看来mongod.conf 至少被访问了。
任何帮助将不胜感激。
【问题讨论】:
-
如果您不想在文件中记录日志,请删除整个“systemLog”部分,因为在记录文件时会使用目标、路径和 logAppend 设置。如果您想在标准输出中登录,请从配置文件中删除所有这些。只是删除日志文件路径会引发错误。
-
太棒了 - 非常感谢。是的,我误解了发生了什么;我错误地认为由于命令行上缺少输出而导致进程挂起,但实际上是因为日志被保存在上面指定的文件中。一旦我弄清楚如何将您的答案标记为“正确”,我就会这样做.