- ubuntu12.04环境下使用kvm ioctl接口实现最简单的虚拟机
- Ubuntu 通过无线网络安装Ubuntu Server启动系统后连接无线网络的方法
- 在Ubuntu上搭建网桥的方法
- ubuntu 虚拟机上网方式及相关配置详解
CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.
这篇CFSDN的博客文章Centos 7下Mongodb开机无法自启动的解决方法由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.
前言 。
首先下载的mongodb有bug,需要自己手动fix,这种只是对特定版本有问题,并非所有版本都有这个问题, 。
SeLinux 。
另外,一定要把selinux设置为disabled或者permissive 。
问题描述 。
1
|
sudo systemctl status mongod.service
|
看到服务起不来,于是打开log文件:
1
|
cat
/var/log/mongodb/mongod
.log
|
有如下问题,是因为无法创建pid文件 。
1
2
|
***** SERVER RESTARTED *****
ERROR: Cannot write pid
file
to
/var/run/mongodb/mongod
.pid: No such
file
or directory
|
Centos7系统每次会把/var/run下面的一些项目清理,所以下次重起来的时候就没有了这个文件了,现在的systemd启动的话,没有什么好办法处理这个文件,因为systemd启动就是执行一个命令:
1
|
/usr/bin/mongod
--quiet -f
/etc/mongod
.conf run
|
处理方案 。
自己创建一个永久的文件路径,以及这个pid文件 。
修改配置文件/etc/mongod.conf里面的pid路径,然后修改systemd条目的路径.
具体操作 。
1.创建文件,并修改权限 。
1
2
3
|
[azuo1228@ecs-ee2fe26e /]$
sudo
mkdir
/mongod
[azuo1228@ecs-ee2fe26e /]$
sudo
touch
/mongod/mongod
.pid
[azuo1228@ecs-ee2fe26e /]$
sudo
chown
-R mongod:mongod
/mongod
|
2.修改配置 。
1
|
[azuo1228@ecs-ee2fe26e /]$
sudo
vim
/etc/mongod
.conf
|
把里面的:
1
|
pidFilePath:
/var/run/mongodb/mongod
.pid
|
修改为创建的文件:
1
|
pidFilePath:
/mongod/mongod
.pid
|
3.修改systemd条目 。
1
|
[azuo1228@ecs-ee2fe26e ~]$
sudo
vim
/etc/systemd/system/multi-user
.target.wants
/mongod
.service
|
把里面的:
1
|
PIDFile=
/var/run/mongodb/mongod
.pid
|
修改为制定的文件的路径:
1
|
PIDFile=
/mongod/mongod
.pid
|
4. reload systemd 。
1
|
[azuo1228@ecs-ee2fe26e ~]$
sudo
systemctl daemon-reload
|
5. 启动mongod或者重起电脑 。
1
|
[azuo1228@ecs-ee2fe26e ~]$
sudo
service mongod start
|
6.查看状态 。
1
|
[azuo1228@ecs-ee2fe26e ~]$
sudo
systemctl status mongod.service
|
NOTE 1:
mongodb安装更新之后,mongo.conf不会更新,但是,会更新 。
1
|
/etc/systemd/system/multi-user
.target.wants
/mongod
.service
|
,装一个新的 。
1
|
/etc/systemd/system/multi-user
.target.wants
/mongod
.service
|
所以,也会起不来.
如果有按照上面设置过conf文件,也需要再次修改这个systemd文件.
NOTE 2
更新的mongodb 3.4.1,已经修正了这个问题 。
1
2
3
4
5
6
7
|
[azuo1228@Server ~]$
sudo
rpm -qa |
grep
mongo
mongodb-org-3.4.1-1.el7.x86_64
mongodb-org-shell-3.4.1-1.el7.x86_64
mongodb-org-tools-3.4.1-1.el7.x86_64
mongodb-org-mongos-3.4.1-1.el7.x86_64
mongodb-org-server-3.4.1-1.el7.x86_64
[azuo1228@Server ~]$
|
总结 。
以上就是关于解决Centos 7上面Mongodb开机无法自启动的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对我的支持.
原文链接:http://www.doocr.com/articles/58d7b63337f8c57d5b69ff9b 。
最后此篇关于Centos 7下Mongodb开机无法自启动的解决方法的文章就讲到这里了,如果你想了解更多关于Centos 7下Mongodb开机无法自启动的解决方法的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 想改进这个问题?将问题更新为 on-topic对于堆栈溢出。 6年前关闭。 Improve this qu
我有实体: @Entity @Table(name = "CARDS") public class Card { @ManyToOne @JoinColumn(name = "PERSON_I
我正在尝试计算二维多边形的表面法线。我正在使用 OpenGL wiki 中的 Newell 方法来计算表面法线。 https://www.opengl.org/wiki/Calculating_a_S
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 这个问题似乎与 help center 中定义的范围内的编程无关。 . 关闭 7 年前。 Improve
关闭。这个问题是off-topic .它目前不接受答案。 想改进这个问题吗? Update the question所以它是on-topic用于堆栈溢出。 关闭 9 年前。 Improve this
我这里有以下 XML: Visa, Mastercard, , , , 0, Discover, American Express siteonly, Buyer Pay
即将发生的 Google 政策变更迫使我们实现一个对话框,以通知欧盟用户有关 Cookie/设备标识符用于广告和分析的情况。我只想向欧盟用户显示此对话框。我不想使用额外的权限(例如 android.p
本文分享自华为云社区《华为大咖说 | 企业应用AI大模型的“道、法、术” ——道:认知篇》,作者:华为云PaaS服务小智。 本期核心观点 上车:AGI是未来5~10年内,每个人都无法回避的技
我有一个与酒精相关的网站,需要先验证年龄,然后才能让他们进入该网站。我使用 HttpModule 来执行此操作,该模块检查 cookie,如果未设置,我会将它们重定向到验证页面。我验证他们的年龄并存储
在欧盟,我们有一项法律,要求网页请求存储 cookie 的许可。我们大多数人都了解 cookie 并同意它们,但仍然被迫在任何地方明确接受它们。所以我计划编写这个附加组件(ff & chrome),它
以下在 C 和/或 C++ 中是否合法? void fn(); inline void fn() { /*Do something here*/ } 让我担心的是,第一个声明看起来暗示函数将被定义
我是一名优秀的程序员,十分优秀!