2018-04-12

Service mongod start 后服务没有启动成功

查看日志(/var/log/mongodb/mongodb.log)有如下信息

Wiredtiger error(13).....file:WiredTiger.wt,connection:/var/lib/mongodb/WiredTiger.turtle:handle-open:open:Permission denied


问题出现原因:

1、权限问题。service mongod start启动时使用的用户默认为mongodb,具体可查看系统文件(/lib/systemd/system/mongod.service)

然后在查看(/var/lib/mongodb/WiredTiger.turtle)的文件权限,使用命令(cd /var/lib ,ls -l /var/lib/mongodb)查看权限发现 WiredTiger.turtle以及其他若干个文件的权限为 root

所以由于mogodb用户的权限无法访问root权限下的文件造成服务启动失败。

但是为什么这几个文件的权限会变为root呢?我的原因是曾经使用过root用户操作过数据库(在rootx下使用mongod命令等),导致文件的权限变化从而无法再使用(service mongod start)。

解决方案

方案一:

(chown -R mongodb:mongodb /var/lib/mongodb )将数据文件权限改回mongodb

(chown -R mongodb:mongodb /var/log/mongodb )将日志文件权限改回mongodb

然后再次启动 service mongo start就可以了,但是如果在以root用户去操作数据库仍会出现上述问题。同时官方极不推荐在root用户下使用数据库。

方案二(从安全性考虑不推荐):

修改(/lib/systemd/system/mongod.service)的user为root,Group为root,

然后再次启动 service mongod start


参考:

https://stackoverflow.com/questions/43137250/mongodb-3-4-3-permission-denied-wiredtiger-kv-engine-cpp-267-error-with-ubuntu-1

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 背景: 阅读新闻 12C CDB模式下RMAN备份与恢复 [日期:2016-11-29] 来源:Linux社区 作...
    阳屯okyepd阅读 9,086评论 0 7
  • 2017.8.2 。。。我也写不来日记,以前有想过写日记,但都只是幻想。很快就放弃了。我这次想试一试,不知道自己能...
    ice_bj阅读 1,171评论 0 0
  • 如果你认识以前的我,那么你一定会原谅现在的我。 习惯没事的时候就刷微博,看一看别人的生活,别人的经历,然后再想一想...
    周诗汶阅读 7,512评论 0 3
  • 以前看到过一篇文章,文章说一个没有兴趣爱好的孩子是一钟缺失,而现在我在想在添加一句一个没兴趣爱好的人生是无趣的人生...
    笑怼人生阅读 1,337评论 0 0
  • 昨夜难以入眠,晨起不消浓愁。 误入荷花深处,留恋不知归路。
    雪竹00阅读 1,580评论 0 2

友情链接更多精彩内容