mongoDB重装或升级版本后,启动失败原因及解决方法

 更新时间:2024年05月19日 22:27:46   作者:the丶only  
这篇文章主要为大家分享一下重装mongodb或者升级mongdb版本后,重启启动也没有任何错误提示,但是查看为失败failed状态,没有启动成功问题的解决方法

问题描述

重装mongodb,或者升级mongdb版本后,重启启动也没有任何错误提示,但是查看为失败failed状态。没有启动成功。

解决方案

我们需要确定问题的原因,MongoDB服务器启动不起来可能有以下几个原因:

接下来,我们将逐一解决这些问题。

1:检查MongoDB服务是否已安装

在Windows系统中,你可以通过“控制面板”->“程序和功能”来查看是否已经安装了MongoDB,如果没有安装,你可以从MongoDB的官方网站下载并安装。

在Linux系统中,你可以使用以下命令来检查MongoDB是否已经安装:

mongo --version

如果这个命令返回了MongoDB的版本信息,那么说明MongoDB已经安装,如果没有返回任何信息,或者报错,那么说明MongoDB没有安装或安装不正确。

2:检查MongoDB服务的配置文件

MongoDB的配置文件通常位于/etc/mongod.conf(Linux)或C:\Program Files\MongoDB\Server\4.4\bin\mongod.cfg(Windows),你需要检查这个文件中的配置是否正确,你需要确保bindIp参数设置为0.0.0.0或者一个特定的IP地址,以确保MongoDB可以从任何IP地址访问,你还需要确保port参数设置的是你的MongoDB服务的监听端口。

3:检查MongoDB服务的端口是否被其他程序占用

你可以使用以下命令来检查你的系统上是否有其他程序正在使用MongoDB服务的端口:

netstat -ano | findstr "27017"

如果你看到输出中有一个或多个行的状态是LISTENING,那么你就需要关闭这些程序,或者将它们绑定到其他的端口。

4:检查MongoDB服务的日志文件

MongoDB的日志文件通常位于/var/log/mongodb(Linux)或C:\Program Files\MongoDB\Server\4.4\log(Windows),你需要打开这个文件,查看其中的错误信息,这些错误信息可能会帮助你找到问题的原因。

如果你无法通过以上步骤解决问题,你可以尝试在网上搜索更多的解决方案,或者寻求专业的技术支持。

mongoDB重装或升级版本后启动失败原因

启动报错ExecStart=/usr/bin/mongod --config /etc/mongod.conf (code=exited, status=14)

在这里插入图片描述

问题原因及解决方法:

1:权限问题

网上找了一圈,大多是这种答案,但是对我没有效果,仍然是failed状态。这里写出来作为参考:

查看数据存储目录、日志目录,和/tmp下的*.sock(*是通配符)的文件这三个目录或文件的执行权限,可通过mongod.conf配置文件查看目录的具体位置。

数据存储目录(dbpath)的位置

chown -R mongodb:mongodb /var/lib/mongo

再修改日志目录的权限

chown -R mongodb:mongodb /var/log/mongodb

最后还有一个文件需要开放用户mongod的写权限,该文件叫*.sock(*是通配符),在/tmp路径下。

chown mongodb:mongodb /tmp/*.sock

最后重启服务。

2:旧版本数据没有清理,导致启动失败

在第一种方法,查看权限已经是mongodb的权限,但是仍然启动失败。是数据存储目录/var/lib/mongodb,旧版本的数据没有清理,导致重装或升级后的mongodb没法启动。所以需要清空数据存储目录的所以文件。

sudo rm -fr /var/lib/mongodb/*

显示如下,重启成功显示active状态。
在这里插入图片描述

Mongodb启动失败相关问题解决方法小结

一、mongod突然启动失败,存在mongod.lock文件

查找文件
find  / -name mongod.lock -d
 
删除该文件
rm -rf mongod.lock
 
重新启动
/data/mongodb/bin/mongod --config /data/mongodb/bin/mongodb.conf --replSet cloud
 
通过修改的方式启动
/data/mongodb/bin/mongod --repair -f /data/mongodb/bin/mongodb.conf --replSet cloud

二、校验配置文件的目录是否正确

查看logpath和dbpath的路径是否正确

三、系统硬盘占用满了

 看系统盘大小
 df -lh
 查看当前目录下各个文件夹的大小
 du -lh --max-depth=1
 解决方案:
 删除对应的备份文件或扩容

四、子节点同步主节点数据失败

主节点是好的,从节点某一次重启不知为何就报 “infoMessage” : “could not find member to sync from”

原因:1.两台服务器时间没有同步,时间差造成

2.数据差异太大,造成日志无法覆盖差异

解决方案:

详细查询mongodb的子节点的全量同步和增量同步

1.关闭子节点

2.把数据目录挪一下 别直接删,最好是mv,然后建一个空的/opt/mongodb/shard2/data

mv /data/mongodb/data/db /data/mongodb/data/db_bak

3.重新启动

到此这篇关于mongoDB重装或升级版本后,启动失败原因及解决方法的文章就介绍到这了,更多相关mongoDB启动失败内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • MongoDB中的MapReduce简介

    MongoDB中的MapReduce简介

    这篇文章主要介绍了MongoDB中的MapReduce简介,MapReduce是一种计算模型,简单的说就是将大批量的工作(数据)分解(MAP)执行,然后再将结果合并成最终结果(REDUCE),需要的朋友可以参考下
    2015-05-05
  • MongoDB的创建、更新和删除

    MongoDB的创建、更新和删除

    下面开始学习MongoDB最重要也是最基础的部分:C(创建)R(查询)U(更新)D(删除);由于R(查询)操作相对来说内容比较多,也比较繁琐,同时使用频率也比较高,所以下一篇会拿出来单独介绍。废话不多说,连上服务器,我们直接进入正题
    2017-05-05
  • MongoDB通过查询与游标彻底玩转分布式文件存储

    MongoDB通过查询与游标彻底玩转分布式文件存储

    MongoDB最大的特点是它支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引,这篇文章主要介绍了MongoDB查询与游标,彻底玩转分布式文件存储,需要的朋友可以参考下
    2023-01-01
  • PHP中的mongodb group操作实例

    PHP中的mongodb group操作实例

    这篇文章主要介绍了PHP中的mongodb group操作实例,本文给出了3个group命令的用法,需要的朋友可以参考下
    2014-09-09
  • 基于Morphia实现MongoDB按小时、按天聚合操作方法

    基于Morphia实现MongoDB按小时、按天聚合操作方法

    这篇文章主要介绍了基于Morphia实现MongoDB按小时、按天聚合操作 ,实现思路是启动定时任务,对各用户的设备状态数据分别按照小时以及天进行聚合,并存储进数据库中供用户后续查询.需要的朋友可以参考下
    2019-07-07
  • MongoDB学习之Text Search文本搜索功能

    MongoDB学习之Text Search文本搜索功能

    这篇文章主要给大家介绍了MongoDB之Text Search文本搜索功能的相关资料,文中给出了详细的示例代码供大家参考学习,对大家具有一定的参考学习价值,需要的朋友们下面来一起看看吧。
    2017-05-05
  • MongoDB插入、更新、删除文档实现代码

    MongoDB插入、更新、删除文档实现代码

    本文通过实例代码给大家简单介绍了mongodb插入、更新、删除文档的方法,需要的的朋友参考下吧
    2017-04-04
  • mongodb基本命令实例小结

    mongodb基本命令实例小结

    这篇文章主要介绍了mongodb基本命令,结合实例形式总结分析了MongoDB数据库切换、查看、删除、查询等基本命令用法与操作注意事项,需要的朋友可以参考下
    2020-01-01
  • Mongodb 利用mongoshell进行数据类型转换的实现方法

    Mongodb 利用mongoshell进行数据类型转换的实现方法

    下面小编就为大家分享一篇Mongodb 利用mongoshell进行数据类型转换的实现方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2017-12-12
  • 分析MongoDB和MySQL各自的关键特性、差别和优势

    分析MongoDB和MySQL各自的关键特性、差别和优势

    MongoDB 和 MySQL 都是不错的数据库,都具有优良的性能。然而,它们是否成功取决于应用场景。首先应当了解它们各自不同的运行环境,而不能只比较各自的优点和缺点。因此,在本文中,我们将探讨 MongoDB 和 MySQL 各自的关键特性、差别和优势。
    2021-06-06

最新评论