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

 更新时间:2017年03月29日 09:34:59   作者:多客博图  
这篇文章主要介绍了Centos 7下Mongodb开机无法自启动的解决方法,文中介绍的非常详细,对大家具有一定的参考价值,需要的朋友们下面来一起看看吧。

前言

首先下载的mongodb有bug,需要自己手动fix,这种只是对特定版本有问题,并非所有版本都有这个问题,

SeLinux

另外,一定要把selinux设置为disabled或者permissive

问题描述

sudo systemctl status mongod.service

看到服务起不来,于是打开log文件:

cat /var/log/mongodb/mongod.log

有如下问题,是因为无法创建pid文件

***** SERVER RESTARTED *****
 ERROR: Cannot write pid file to /var/run/mongodb/mongod.pid: No such file or directory

Centos7系统每次会把/var/run下面的一些项目清理,所以下次重起来的时候就没有了这个文件了,现在的systemd启动的话,没有什么好办法处理这个文件,因为systemd启动就是执行一个命令:

/usr/bin/mongod --quiet -f /etc/mongod.conf run

处理方案

自己创建一个永久的文件路径,以及这个pid文件

修改配置文件/etc/mongod.conf里面的pid路径,然后修改systemd条目的路径。

具体操作

1.创建文件,并修改权限

[azuo1228@ecs-ee2fe26e /]$ sudo mkdir /mongod
[azuo1228@ecs-ee2fe26e /]$ sudo touch /mongod/mongod.pid
[azuo1228@ecs-ee2fe26e /]$ sudo chown -R mongod:mongod /mongod

2.修改配置

[azuo1228@ecs-ee2fe26e /]$ sudo vim /etc/mongod.conf

把里面的:

pidFilePath: /var/run/mongodb/mongod.pid

修改为创建的文件:

pidFilePath: /mongod/mongod.pid

3.修改systemd条目

[azuo1228@ecs-ee2fe26e ~]$ sudo vim /etc/systemd/system/multi-user.target.wants/mongod.service

把里面的:

PIDFile=/var/run/mongodb/mongod.pid

修改为制定的文件的路径:

PIDFile=/mongod/mongod.pid

4. reload systemd

[azuo1228@ecs-ee2fe26e ~]$ sudo systemctl daemon-reload

5. 启动mongod或者重起电脑

[azuo1228@ecs-ee2fe26e ~]$ sudo service mongod start

6.查看状态

[azuo1228@ecs-ee2fe26e ~]$ sudo systemctl status mongod.service

NOTE 1:

mongodb安装更新之后,mongo.conf不会更新,但是,会更新

/etc/systemd/system/multi-user.target.wants/mongod.service

,装一个新的

/etc/systemd/system/multi-user.target.wants/mongod.service

所以,也会起不来。

如果有按照上面设置过conf文件,也需要再次修改这个systemd文件。

NOTE 2:

更新的mongodb 3.4.1,已经修正了这个问题

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

相关文章

  • MongoDB 复制(副本集)学习笔记

    MongoDB 复制(副本集)学习笔记

    这篇文章主要介绍了MongoDB 复制(副本集),结合实例形式分析了MongoDB数据库复制的相关原理、配置、使用方法及操作注意事项,需要的朋友可以参考下
    2019-10-10
  • Mac下安装配置mongodb并创建用户的方法

    Mac下安装配置mongodb并创建用户的方法

    最近在在学习nodejs,相比mysql,mongodb与nodejs搭配更合适,存储数据格式也比较接近JS对象。下面这篇文章主要给大家介绍了关于在Mac下安装配置mongodb并创建用户的相关资料,需要的朋友可以参考下
    2018-05-05
  • MongoDB设计方法以及技巧示例详解

    MongoDB设计方法以及技巧示例详解

    这篇文章主要给大家介绍了关于MongoDB设计方法以及技巧的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用MongoDB具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2020-06-06
  • Mac中mongoDB的安装与卸载步骤详解

    Mac中mongoDB的安装与卸载步骤详解

    mongoDB是一个非常不错的数据库,最近也正在学习mongoDB,在使用一个数据库前必不可少的就是安装和卸载,所以下面这篇文章主要给大家介绍了关于Mac系统中mongoDB安装与卸载的相关资料,需要的朋友可以参考借鉴,下面来一起看看吧。
    2017-10-10
  • Windows下mongodb安装与配置三步走

    Windows下mongodb安装与配置三步走

    大家应该都知道mongodb是当下流行的非关系型数据库,特别是配合node使用,下面示范一下在Windows系统下如何安装和配置的,文中通过图文介绍的非常详细,需要的朋友可以参考借鉴,下面来一起看看吧。
    2017-03-03
  • 在mac系统下安装与配置mongoDB数据库

    在mac系统下安装与配置mongoDB数据库

    这篇文章主要介绍了在mac系统下安装与配置mongoDB数据库的操作步骤,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2021-09-09
  • Ubuntu 14.04  安装 MongoDB 及 PHP MongoDB Driver详细介绍

    Ubuntu 14.04 安装 MongoDB 及 PHP MongoDB Driver详细介绍

    这篇文章主要介绍了Ubuntu 14.04 安装 MongoDB 及 PHP MongoDB Driver详细介绍的相关资料,需要的朋友可以参考下
    2016-10-10
  • MongoDB的复合通配符索引及应用场景

    MongoDB的复合通配符索引及应用场景

    MongoDB的复合通配符索引为处理复杂和多变的数据结构提供了灵活的索引解决方案,通过合理使用复合通配符索引,可以显著提高查询效率并减少索引维护成本,本文给大家介绍MongoDB的复合通配符索引,感兴趣的朋友跟随小编一起看看吧
    2024-08-08
  • mongodb driver使用代码详解

    mongodb driver使用代码详解

    MongoDB 是一个基于分布式文件存储的数据库,由 C++ 语言编写,这篇文章主要介绍了mongodb driver使用,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-03-03
  • mongodb中oplog介绍和格式详析

    mongodb中oplog介绍和格式详析

    Oplog 是用于存储 MongoDB 数据库所有数据的操作记录的(实际只记录增删改和一些系统命令操作,查是不会记录的),有点类似于 mysql 的 binlog 日志,这篇文章主要给大家介绍了关于mongodb中oplog和格式的相关资料,需要的朋友可以参考下
    2021-07-07

最新评论