MongoDB启动失败原因「建议收藏」

MongoDB启动失败原因「建议收藏」MongoDB启动失败原因今天某个项目突然登录不了,查看服务器发现是后端出现异常,停掉后端重新启动的时候失败,显示是数据库连接失败,然后接着查看数据库,发现数据库连接失败,原因是数据库挂掉了。数据库用的是MongoDB,我也只是听过还没有使用过,简单的在网上查询了一下MongoDB的启动命令就直接开始启动了,结果发现启动失败。尝试了好一些方法后才终于成功启动:尝试提升MongoDB所在文…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定

MongoDB启动失败原因

今天某个项目突然登录不了,查看服务器发现是后端出现异常,停掉后端重新启动的时候失败,显示是数据库连接失败,然后接着查看数据库,发现数据库连接失败,原因是数据库挂掉了。

数据库用的是MongoDB,我也只是听过还没有使用过,简单的在网上查询了一下MongoDB的启动命令就直接开始启动了,结果发现启动失败。

尝试了好一些方法后才终于成功启动:

  1. 尝试提升MongoDB所在文件夹的权限,提升MongoDB数据存放的文件夹的权限。
  2. 查看是否还有MongoDB的进程存在,占用了端口
  3. 查询清楚MongoDB的数据存放位置,网上搜到的启动命令一般是这个:./mongod --dbpath /data/db,如果实际的数据不是存放在这里,就算启动成功也是找不到原来的数据的。
  4. 使用修复命令自动修复MongoDB:sudo /usr/local/mongodb/bin/mongod --repair
MongoDB的启动:

如果是使用./mongod --dbpath /data/db启动的话,启动成功后命令窗口的就会卡住(如图一,图二),这个情况其实是已经成功启动的了,但是如果我们退出这个窗口或者把这个窗口重新进入到可以输入命令的模式,就会直接停掉这个MongoDB的线程。

如果在启动命令后面加了fork,则会以守护进程模式启动MongoDB,就算关掉窗口也不会停止MongoDB,
命令:./mongod --dbpath /data/db --fork,这个命令启动的话会省略其他信息,直接显示启动的信息。

MongoDB完整的启动命令:

sudo ./mongod --dbpath=/home/mongodb/data --logpath=/home/mongodb/logs --logappend --bind_ip=0.0.0.0 --port=27017 --fork

Jetbrains全家桶1年46,售后保障稳定

指定数据存放的位置:

--dbpath=/home/mongodb/data

指定log文件存放位置:

--logpath=/home/mongodb/logs

日志以天为单位自动切割:

--logappend

绑定可以访问MongoDB的IP地址,如果没有这个则不允许其他电脑访问,如果是0.0.0.0则所有电脑都可以访问:

--bind_ip=0.0.0.0

绑定启动端口:

--port=27017

以守护进程启动:

--fork

图一:
在这里插入图片描述
图二:
在这里插入图片描述

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/226931.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • CentOS5下的confluence的安装与配置

    CentOS5下的confluence的安装与配置

  • java iso8601 PT1M,iso8601

    java iso8601 PT1M,iso8601普通时间转ISO8601格式的时间publicstaticStringgetISO8601TimestampFromDateStr(Stringtimestamp){java.time.format.DateTimeFormatterdtf1=java.time.format.DateTimeFormatter.ofPattern(“yyyy-MM-ddHH:mm:ss”);Loc…

    2022年10月23日
  • java 实现 按位异或_Java 按位异或的性质及其妙用

    java 实现 按位异或_Java 按位异或的性质及其妙用文章摘要:1、按位异或,可以简单理解成:不进位加法。即:1+1=0;0+0=0;1+0=1;2、任何数和自己异或结果为零。3、按位异或自反性。两次运算操作,可以将最后的结果还原。4、任何数和0做异或值不变,和1异或结果为原操作数取反。5、交换律。不使用中间变量,交换两个数。一、按位异或具有自反性。即:对同一个数据,进行两次按位异或操作,等于数据本身。intdisplayOptions=0x…

  • js清空input file的值

    js清空input file的值今天在做选择本地图片上传的功能时遇到一个问题,第一次选择图片完成会触发onchange事件,获取文件后动态在界面上创建img标签展示,这个过程没有问题,问题出在当把创建的img元素节点删除后,再点file控件选中同一个文件后发现图片并没有被重新创建出来。分析了原因,是因为上一次file里选择的文件路径值与本次选择的文件路径值是一样的,值没有改变所以导致file不会触发onchange事件。解

  • css 首行缩进

    css 首行缩进用CSS实现段落首缩进两个字符,应该使用首行缩进text-indent。比如文本块中一般每段前空两个汉字。在这里我们需要了解一种长度单位em。em是相对长度单位。相对于当前对象(父元素)内文本的字体尺寸。我们中文段落一般每段前空两个汉字。实际上,就是首行缩进了2em。p{ width:200px; text-indent:2em;/*em是相对单位,2em即现在一个字大小的两倍*/}<p> Hi!朋友,感谢您愿意查看猿叔博客。如果您有什么建议或者意见,欢迎联系我,我们互相学习,共

    2022年10月28日
  • XSS跨站脚本攻击剖析与防御(跨站脚本攻击漏洞怎么修复)

    XSS(跨站脚本)漏洞详解XSS的原理和分类跨站脚本攻击XSS(CrossSiteScripting),为了不和层叠样式表(CascadingStyleSheets,CSS)的缩写混淆,故将跨站脚本攻击缩写为XSS。恶意攻击者往Web页面里插入恶意Script代码,当用户浏览该页之时,嵌入其中Web里面的Script代码会被执行,从而达到恶意攻击用户的目的。XSS攻击针对的是用户…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号