Sha*_*riq 5 linux ubuntu mongodb mongoid systemd
我最近将我的ubuntu从14.10升级到了15.04.所有功能似乎都工作正常,除了MongoDB.我使用Mongoid gem在rails应用程序上使用带有ruby的mongoDB.MongoDB不能像我们在ubuntu中那样通过服务进行控制.
sudo service mongodb start
Run Code Online (Sandbox Code Playgroud)
要么
sudo service mongod start
Run Code Online (Sandbox Code Playgroud)
我收到此错误消息
无法重启mongod.service:单元mongod.service无法加载:没有这样的文件或目录.
但每次我必须使用我的应用程序连接到MongoDB服务器时,我必须手动启动它
sudo mongod -f /etc/mongod.conf
Run Code Online (Sandbox Code Playgroud)
所以mongodb,只要该终端被打开连接.我正在使用MongoDBRuby on Rails应用程序Mongoid adapater/ORM.
当我跑
sudo service mongodb status
Run Code Online (Sandbox Code Playgroud)
我得到以下输出
mongodb.service - An object/document-oriented database
Loaded: loaded (/lib/systemd/system/mongodb.service; enabled; vendor preset: enabled)
Active: failed (Result: exit-code) since ??? 2015-05-06 14:47:53 PKT; 5s ago
Docs: man:mongod(1)
Process: 28602 ExecStart=/usr/bin/mongod --config /etc/mongodb.conf (code=exited, status=4)
Main PID: 28602 (code=exited, status=4)
??? 06 14:47:53 NX00443 systemd[1]: Started An object/document-oriented database.
??? 06 14:47:53 NX00443 systemd[1]: Starting An object/document-oriented database...
??? 06 14:47:53 NX00443 systemd[1]: mongodb.service: main process exited, code=exited, status=4/NOPERMISSION
??? 06 14:47:53 NX00443 systemd[1]: Unit mongodb.service entered failed state.
??? 06 14:47:53 NX00443 systemd[1]: mongodb.service failed.
Run Code Online (Sandbox Code Playgroud)
在这方面的任何帮助将不胜感激.
G.B*_*G.B 10
事实证明,Mongo>2.6.3start有一个已知问题:
支持Systemd(无法使用Fedora 15或更高版本的init脚本启动mongodb)
由于这里要注意:在这个环节上,似乎这可能不会完全固定>2.6.3,直到Ubuntu 16.04,除非有强烈的呼声.
所以解决方案是发布:
sudo apt-get install --reinstall mongodb
Run Code Online (Sandbox Code Playgroud)
这回到了mongo 2.6.3现在所有的工作!对于那些遇到这个...
小智 5
您需要更改db的路径配置:
例如在文件“/etc/mongod.conf”中设置“dbPath:/data/db”
您需要授予 mongodb 用户访问此路径的权限:
sudo chown -R mongodb /data/db
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
16261 次 |
| 最近记录: |