在Ubuntu里下载安装mongodb数据库服务无法启动

本文介绍了在Ubuntu系统中安装mongodb数据库服务后无法启动的常见问题及解决方案。首先,文章概述了mongodb的优势,如易扩展性、高性能和灵活的数据模型。接着,详细讲述了mongodb的安装步骤,包括命令行安装和源码安装。在启动部分,提供了两种启动服务的方法,并指出了启动过程中可能遇到的数据目录、日志文件、端口等问题及其解决办法。对于启动失败的情况,给出了检查data目录、磁盘空间不足等故障排查建议。最后,提示了如果需要长期使用--smallfile选项启动,可能需要扩大Ubuntu磁盘空间。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在此先介绍下mongodb

mongodb的优势

  • 易扩展: NoSQL数据库种类繁多, 但是⼀个共同的特点都是去掉关系数据库的关系型特性。 数据之间⽆关系, 这样就⾮常容易扩展
  • ⼤数据量, ⾼性能: NoSQL数据库都具有⾮常⾼的读写性能, 尤其在⼤数据量下, 同样表现优秀。 这得益于它的⽆关系性, 数据库的结构简单
  • 灵活的数据模型: NoSQL⽆需事先为要存储的数据建⽴字段, 随时可以存储⾃定义的数据格式。 ⽽在关系数据库⾥, 增删字段是⼀件⾮常麻烦的事情。 如果是⾮常⼤数据量的表, 增加字段简直就是⼀个噩梦

 mongodb的安装

1 命令安装

sudo apt-get install -y mongodb

https://docs.mongodb.com/manual/tutorial/install-mongodb-on-ubuntu/

2 源码安装

 mongodb的启动

1 服务端mongodb的启动

启动方式1:

  • 启动: sudo service mongod start
  • 停止: sudo service mongod stop
  • 重启: sudo service mongod restart
  • 配置文件的位置:/etc/mongod.conf
  • 日志的位置:/var/log/mongodb/mongod.log
  • 默认端⼝:27017

启动方式2:

  • 启动: sudo mongod [--dbpath=dbpath --logpath=logpath --append -fork] [–f logfile ]
  • 只以 sudo mongod 有的人的需要使用sudo mongodb   命令启动时,默认将数据存放在了 /data/db 目录下,需要手动创建
  • --dbpath: 指定数据库的存放路径
  • --logpath: 指定日志的存放路径
  • --logappend: 设置日志的写入形式为追加模式
  • -fork: 开启新的进程运行mongodb服务
  • f: 配置文件(可以将上述配置信息写入文件然后通过本参数进行加载启动)

2 客户端mongo

  • 启动本地客户端:mongo
  • 查看帮助:mongo –help
  • 退出:exit或者ctrl+c

此处附带 mongodb的官方文档

位置:https://docs.mongodb.com/manual/introduction/

安装完之后,要先启动服务,然后启动本地客户端查看是否安装成功。

类似于这样的服务根本就没有启动

如果出现其他错误,类似于  啥啥已经存在的那种(原谅我没上图,因为之前没有保留截图,解决完bug之后之前的情况也不出现了。网上搜了一圈也没找到要盗用的图。不过以下几种方法应该可以解决掉大部分的问题了)

1.第一种方法,直接cd到根目录下,去查看有没有data问价夹,(没有data的话直接创建,cd 到data里创建db)如果存在直接cd到data里,存在db的话直接删除重建,因为db里可能有锁的存在。操作完毕使用第二种方式启动。

2.如果上述方式还是无法启动,你向上翻找你的包错信息,可能会有一个--smallfile的单词,这种情况可能是由于你Ubuntu内磁盘空间不足,导致的。因为mongodb整个运行起来需要消耗极大的内存空间,此时可以直接在第二种方式后边加上 --smallfile(有可能不是这个单词,希望你去上边的报错信息里查找下)启动。

3.如果这上述两种都不好使的话,只能您自己在找其他方法了,或者卸载重装【以上只是自己个人遇到问题的解决方法,不一定能够解所有的相关bug】

最后,如果加上那个一小文件形式启动的 每次需要  --smallfile,启动的,怕麻烦的,那就需要你对你的Ubuntu磁盘进行空间扩容了,磁盘空间扩容详情参考本人上一篇博客

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值