专栏首页运维经验分享Centos 7下Mongodb开机无法自启动的解决方法

Centos 7下Mongodb开机无法自启动的解决方法

Centos 7下Mongodb开机无法自启动的解决方法

 更新时间:2017年03月29日 09:34:59   作者:多客博图   

 我要评论

这篇文章主要介绍了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开机无法自启动的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对脚本之家的支持。

(adsbygoogle = window.adsbygoogle || []).push({});

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 给debian的docker容器添加crontab定时任务

    Docker容器是不支持后台服务的,像systemctl service crontab这些后台运行的服务是不能通过

    Ryan-Miao
  • zabbix报错排错大全3 原

    https://www.cnblogs.com/losbyday/category/876878.html作者总结的很全棒

    拓荒者
  • Linux - WSL

    Shell 是一个用 C 语言编写的程序,它是用户使用 Linux 的桥梁。Shell 既是一种命令语言,又是一种程序设计语言。 Shell 是指一种应用程序...

    祝你万事顺利
  • 比 man 更强悍的命令行工具 cheat

    相信你在技术文章里经常会看到 TL;DR 即Too Long; Didn’t Read. 太长不看, man curl 的内容就是太长了,我不看。

    苏生不惑
  • springboot集成redis实现消息发布订阅模式-跨多服务器

    基础配置参考 https://blog.csdn.net/llll234/article/details/80966952

    用户1518699
  • Spark Shuffle的技术演进

    本文原文 http://www.leonlu.cc/profession/19-spark-shuffle ,作者 LeonLu

    Yajun_
  • 永远离不开的小工具

    曾记得 N 年前,我经常干这种事情,码这种代码。今天回过头来,对此类事情简单做一个分享,以防你们也遇到此类问题,不妨拿去实践一下,说不定会提高效率呢。

    一猿小讲
  • SpringBoot入门建站全系列(十五)内置定时任务及Quartz定时任务使用

    2.ScheduledExecutorService,线程池版的TimerTask。

    品茗IT
  • python与地理空间分析(3)shp文件操作

    在python与地理空间分析(1)与(2)中我们介绍了GIS中常用的数据类型、python在处理地理空间数据时用到的包以及给定经纬度计算空间距离的算法,本期我们...

    zhangqibot
  • shiro 和 spring boot 的集成

    使用 shiro-spring-boot-web-starter 在 spring boot 中集成 shiro 只需要再添加一个依赖

    Carlos Ouyang

扫码关注云+社区

领取腾讯云代金券