Linux下MongoDB安装配置教程
时间:2026-02-10 22:27:44 342浏览 收藏
学习知识要善于思考,思考,再思考!今天golang学习网小编就给大家带来《Linux安装MongoDB配置教程》,以下内容主要包含等知识点,如果你正在学习或准备学习文章,就都不要错过本文啦~让我们一起来看看吧,能帮助到你就更好了!
MongoDB官方已停止支持32位系统及旧版Linux(如CentOS 6、Ubuntu 16.04),仅提供x86_64/ARM64架构包,要求Ubuntu 20.04+/Debian 11+或RHEL/CentOS 8+等新系统;安装须通过官方源或tar.gz手动部署,并注意glibc≥2.28等依赖版本。

MongoDB 官方已停止对 32 位系统和旧版 Linux 发行版(如 CentOS 6、Ubuntu 16.04)的正式支持,直接用 apt install mongodb 或 yum install mongodb 装出来的极大概率是过时版本(如 3.6 或更老),甚至根本不可用。
确认系统架构与发行版版本
装错包的第一步,往往是从没看清自己跑的是什么系统。MongoDB 官方只提供 x86_64 和 ARM64 架构的二进制包,且明确要求:
Ubuntu 20.04/22.04或Debian 11/12(推荐用.deb包 + 官方源)RHEL/CentOS 8/9或Rocky/AlmaLinux 8/9(用.rpm包 +dnf)- 运行
uname -m确保输出是x86_64或aarch64;cat /etc/os-release查清确切版本 - 别在 CentOS 7 上硬套 MongoDB 6+ 的 repo——它依赖
systemd239+,而 CentOS 7 自带的是 219
用官方仓库安装(推荐 Ubuntu/Debian)
跳过系统自带的过时包,直连 MongoDB 官方 APT 源:
- 导入公钥:
wget -qO - https://www.mongodb.org/static/pgp/server-7.0.asc | sudo apt-key add -(注意:新版apt-key已弃用,更稳妥写法是gpg --dearmor -o /usr/share/keyrings/mongodb-server-7.0.gpg) - 添加源:
echo "deb [arch=amd64,arm64 signed-by=/usr/share/keyrings/mongodb-server-7.0.gpg] https://repo.mongodb.org/apt/ubuntu jammy/mongodb-org/7.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-7.0.list(把jammy换成你系统的代号,如focal对应 20.04) - 更新并安装:
sudo apt update && sudo apt install -y mongodb-org - 启动服务:
sudo systemctl start mongod,并检查状态:sudo systemctl status mongod(若报Failed to start mongod.service: Unit mongod.service not found,说明安装失败或包名不匹配)
手动下载 tar.gz 安装(适合无 root 或定制路径)
当无法配置系统级 repo(比如容器内、受限服务器),直接解压即用更可控:
- 去 官网下载页 找对应系统的
mongodb-linux-x86_64-ubuntu2204-7.0.14.tgz类似文件(注意后缀必须匹配你的系统) - 解压到本地目录:
tar -zxvf mongodb-linux-x86_64-*.tgz && mv mongodb-linux-x86_64-* ~/mongodb - 加到 PATH:
echo 'export PATH=~/mongodb/bin:$PATH' >> ~/.bashrc && source ~/.bashrc - 创建数据目录:
mkdir -p ~/data/db,并确保当前用户有读写权限 - 手动启动:
mongod --dbpath ~/data/db --port 27017(不加--fork就前台运行,方便看日志;后台运行需额外配--logpath)
启动失败常见原因与快速排查
运行 mongod 后卡住、闪退或日志里报错,多数出在权限或路径上:
Permission denied:不是因为没 root,而是/data/db目录归属不对——用sudo chown -R $USER:$USER /data/db(或改用自己家目录下的路径)Address already in use:端口被占,换端口启动:mongod --port 27018 --dbpath ~/data/dbFailed to set up listener: SocketException: Address not available:IPv6 配置问题,加参数--bind_ip 127.0.0.1Unable to create/process file:SELinux 或 AppArmor 拦截,临时关掉测试:sudo setenforce 0(仅调试用)- 连接不上?先确认
mongod进程是否真在跑:ps aux | grep mongod,再试mongo --host 127.0.0.1:27017(新版mongosh替代了mongoshell)
真正麻烦的不是安装命令本身,而是不同发行版对 OpenSSL、glibc、systemd 的隐式版本要求——MongoDB 7.0 要求 glibc ≥ 2.28,而 CentOS 8 最低满足,CentOS 7 不行。别省那几分钟查文档,先看清楚 os-release 和 ldd --version 输出再说。
今天关于《Linux下MongoDB安装配置教程》的内容就介绍到这里了,是不是学起来一目了然!想要了解更多关于的内容请关注golang学习网公众号!
-
501 收藏
-
501 收藏
-
501 收藏
-
501 收藏
-
501 收藏
-
491 收藏
-
408 收藏
-
439 收藏
-
300 收藏
-
456 收藏
-
102 收藏
-
384 收藏
-
114 收藏
-
196 收藏
-
212 收藏
-
133 收藏
-
465 收藏
-
- 前端进阶之JavaScript设计模式
- 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
- 立即学习 543次学习
-
- GO语言核心编程课程
- 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
- 立即学习 516次学习
-
- 简单聊聊mysql8与网络通信
- 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
- 立即学习 500次学习
-
- JavaScript正则表达式基础与实战
- 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
- 立即学习 487次学习
-
- 从零制作响应式网站—Grid布局
- 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
- 立即学习 485次学习