Linux 安装 MongoDB

MongoDB 安装

官网下载地址:www.mongodb.com/try/downloa...

本文演示在 Fedora 上安装 MongoDB

一、进入官网下载地址

二、选择合适的版本

  • Platform: 选择对应的系统版本即可
  • Package: 选择 tgz 压缩包

由于 Fedora 是我在 Mac 上的虚拟机,所以这里选的是 ARM64

三、下载安装包

3.1 在线安装

  • 点击 Copy Link 复制下载链接
  • 在终端中执行下载命令
arduino 复制代码
// 该命令会将文件下载到当前文件夹
curl -O <复制的地址>

3.2 离线安装

点击 Download 下载安装包即可

四、安装 MongoDB

  1. 新建一个目录
bash 复制代码
# 创建文件夹
sudo mkdir -p /data /data/db
# 给当前用户设置权限
sudo chown <用户名> /data/db
  1. 将下载好的安装包解压到 /data 目录下
bash 复制代码
tar -xvf mongodb-linux-x86...tgz -C /data
  1. 添加环境变量
ruby 复制代码
export PATH=$PATH:/data/mongodb-linux-x86.../bin
  1. 执行 mongod 测试环境变量配置是否成功

    mongod

注:如果安装 5.x 版本,执行 mongod 报:非法命令,则需要降级 MongoDB 数据库为 4.x

  1. 安装 MongoDB 数据库
css 复制代码
mongod --dbpath /data/db --port 27017 --logpath /data/db/mongod.log --fork -bind_ip 0.0.0.0
  • --dbpath: mongod 实例存储数据的目录
  • --port: MongoDB 实例侦听客户端连接的 TCP 端口。
  • --logpath: 日志文件路径
  • --fork: 默认情况下,mongod 不作为守护进程运行,该选项可以将 mongod 作为守护进程运行。
  • -bind_ip: mongod 用于监听客户端连接的主机名和/或 IP 地址, 默认是 localhost, 0.0.0.0 是允许所有来源IP 链接。

输出一下内容则为安装成功

如果安装失败,并且报下面这个问题,可能是因为文件夹没有权限导致的

五、mongorestore

MongoDB 备份恢复工具

5.1 mongorestore 未找到命令

  1. 首先在 mongo 安装目录中查找是否有 mongorestore
  2. 如果没有则下载 mongodb 工具箱
    官方下载地址:www.mongodb.com/try/downloa...
  3. 下载并安装完成后,设置为环境变量即可正常运行

5.2 mongorestore 无法成功导入

执行 mongorestore 报以下错误

vbnet 复制代码
2022-05-05T23:29:36.869+0800 using default 'dump' directory
2022-05-05T23:29:36.869+0800 try 'mongorestore --help' for more information
2022-05-05T23:29:36.869+0800 Failed: mongorestore target 'dump' invalid: stat dump: no such file or directory
2022-05-05T23:29:36.869+0800 0 document(s) restored successfully. 0 document(s) failed to restore.

执行命令时指定备份恢复目录

bash 复制代码
mongorestore /data/dump
相关推荐
juejin9985 小时前
Claude Code Lab-3(下):三能力 MCP Server
后端
java小白小5 小时前
SpringBoot(07):事务管理——@Transactional 你真的用对了吗?
后端
shepherd1115 小时前
吞吐量提升 10 倍:高并发大批量数据处理任务的架构演进与性能调优
java·后端·架构
java小白小5 小时前
SpringBoot(05):Spring Data JPA——用面向对象的方式操作数据库
后端
juejin9985 小时前
Claude Code Lab-2(上):自然语言查库助手
后端
java小白小5 小时前
SpringBoot(06):多数据源配置——一个项目连多个库怎么做
后端
程序员cxuan6 小时前
Codex 会把磁盘给烧了?完整复盘来了!
人工智能·后端·程序员
ClouGence7 小时前
Oracle 数据同步为什么会出现数据不一致?长事务是常被忽略的原因
数据库·后端·oracle
快乐肚皮7 小时前
深入理解Loop Engineering
前端·后端
小兔崽子去哪了8 小时前
Vue3 + Pinia 集成 IGV.js 实现 BAM 文件在线浏览
javascript·vue.js·后端