2015-12-04 36 views
0

我想在OSX上运行的MongoDB,并遇到一个共同的问题,错误,退出代码1无法在OSX

这里是我最简单的mongod.conf开始的MongoDB:

systemLog: 
    destination: file 
    logAppend: true 
    path: ~/Documents/test/mongodb/mongodb.log 

storage: 
    directoryPerDB: true 
    dbPath: ~/Documents/test/mongodb/mongodb_data 
    journal: 
    enabled: true 

processManagement: 
    fork: true # fork and run in background 

net: 
    port: 27017 

我777'd所有的文件夹,以便有没有办法,它可以是一个权限问题(右:P)

mac$ ls -lah ~/Documents/test/mongodb/ 
total 8 
drwxr-xr-x 5 mac staff 170B Dec 4 15:34 . 
drwxr-xr-x 11 mac staff 374B Dec 4 15:19 .. 
-rwxrwxrwx 1 mac staff 301B Dec 4 15:21 mongod.conf 
-rwxrwxrwx 1 mac staff  0B Dec 4 15:21 mongodb.log 
drwxrwxrwx 2 mac staff 68B Dec 4 15:18 mongodb_data 

但它仍然得到这个错误代码!

mac$ sudo mongod -f ~/Documents/test/mongodb/mongod.conf 
about to fork child process, waiting until server is ready for connections. 
forked process: 70062 
ERROR: child process failed, exited with error number 1 

事情我已经从其他的问题试过:(?)

  1. 显然我不应该来运行这个作为sudo的,我都试过须藤并没有sudo的,相同的结果
  2. 可能是一个权限问题(Starting mongod fails unless run as root) - 以及mongodb_data目录和conf和日志都是777所以真的可以这样吗?我试过chown也都没有效果。
  3. 在mongod.conf删除PID位置(做,没有任何效果)Starting mongod fork, ERROR: child process failed, exited with error number 1

另外:

  • mongodb.log无关,在这多重启动后试图
  • mongodb_data /没有任何内容(无.lock文件或任何,只是空的)

任何想法?

+0

作为下一步我会尝试没有配置运行的mongod文件。运行“mongod --dbpath DB_PATH”,用DB_PATH替换实际的dbpath。我也会使用绝对路径,而不是使用“〜”作为log和dbpath的基础。 –

+0

将路径更改为绝对路径而不是亲属路径没有任何影响。但是,从命令行调用整个东西似乎是这样工作的:sudo mongod --dbpath/Users/mac/Documents/test/mongodb/mongodb_data/--fork --logpath/Users/mac/Documents/test/mongodb/mongodb.log - 但为什么不使用conf文件? – LittleBobbyTables

回答

1

这可能是日志文件的错误。奇怪的是你的是0字节。 无论如何,你不需要做777权限,你不需要在OSX系统上用sudo运行mongod。 尽量做到以下几点:

  1. 的mkdir〜/ sometest
  2. CD〜/ sometest
  3. CP〜/文档/测试/的MongoDB/mongod.conf。
  4. 更换systemLog路径mongodb.log,更换DBPATH数据
  5. 的mkdir数据
  6. 开始的mongod(mongod的-f mongod.conf)
+0

感谢您的建议。试过这个,但得到另一个错误: mac $ mkdir〜/ sometest mac $ cd〜/ sometest/ mac $ cp〜/ Documents/test/mongodb/mongod.conf。 mac $ vim mongod。conf mac $ mkdir data mac $ mongod -f mongod.conf 即将fork子进程,等到服务器准备好连接。 分叉进程:73375 错误:子进程失败,退出错误号14(编辑:它毁了我的格式) – LittleBobbyTables

+0

检查你的配置http://stackoverflow.com/questions/30476447/mongodb-error-child-process-failed -exited与 - 误差数14 – miholeus