广告

Linux上MongoDB快速安装教程:从环境准备到启动与验证的完整步骤

1. 环境准备

1.1 支持的 Linux 发行版与硬件要求

在开始安装前,确认你的 Linux 发行版为 64 位版本,且内核版本满足 MongoDB 的最低要求。常见的发行版包括 Ubuntu、Debian、CentOS/RHEL 和 Fedora 等,均有官方安装路径。64 位架构是必须条件,32 位系统不在官方支持范围内。

为了获得稳定的性能,建议系统具备合理的内存与磁盘 IO 能力。推荐最小 2GB 以上内存,并尽量使用 SSD 以提升 I/O 速度;同时确保网络稳定,以避免在数据写入时产生高延迟。

1.2 关闭 Swap 与时钟同步

在生产环境中,禁用 Swap可以减少页面置换带来的延迟,提升数据库的可预测性。以下步骤确保短期和长期效果:临时关闭 Swap与将来启动时不再启用 Swap。

# 临时禁用 Swap
sudo swapoff -a
# 永久禁用:将 /etc/fstab 中的 swap 条目注释掉
sudo sed -i '/\sswap\s/s/^/#/' /etc/fstab

另外,内核参数 vm.max_map_count 与时钟同步对 MongoDB 的性能有直接影响。请设定一个较高的值并保持系统时钟准确:设置 vm.max_map_count有助于提升并发处理能力。

sudo sysctl -w vm.max_map_count=262144
echo "vm.max_map_count=262144" | sudo tee -a /etc/sysctl.conf

为了避免时间漂移导致的副作用,启用时间同步服务(如 chrony/ntp),确保集群中各节点时间一致,从而减少跨节点比较时的冲突概率。

sudo apt-get install -y chrony
sudo systemctl enable --now chrony
# 或在非 Debian/Ubuntu 系统中使用相应的 chrony 服务名称

2. 安装 MongoDB

2.1 配置官方仓库

安装 MongoDB 之前,应配置官方仓库以获取最新版或指定版本的 MongoDB 二进制包。不同 Linux 发行版的仓库配置略有差异,下面给出常见场景的基本步骤。为签名公钥建立信任,并添加对应版本的源文件。

# Ubuntu/Debian(示例:6.0 版本系列)
sudo apt-get install -y ca-certificates curl gnupg
curl -fsSL https://www.mongodb.org/static/pgp/server-6.0.asc | sudo gpg --dearmor -o /usr/share/keyrings/mongodb-archive-keyring.gpg
echo "deb [ arch=amd64 signed-by=/usr/share/keyrings/mongodb-archive-keyring.gpg ] https://repo.mongodb.org/apt/ubuntu jammy/mongodb-org/6.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-6.0.list
sudo apt-get update
# RHEL/CentOS(示例:6.0 版本系列)
cat > /etc/yum.repos.d/mongodb-org-6.0.repo << 'EOF'
[mongodb-org-6.0]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/6.0/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-6.0.asc
EOF
sudo yum install -y mongodb-org

通过上述步骤后,系统已经具备了从官方源安装 MongoDB 的能力。不同发行版的仓库地址与 GPG 键可能随版本更新而变化,请以官方网站的最新指南为准,避免因 URL 变动导致安装失败。

2.2 安装 MongoDB 包

仓库配置完成后,安装 mongodb-org 及相关组件,以获得 MongoDB Community 版的完整工具集。不同包管理器的命令如下所示,任选其一执行即可。请根据实际系统选择 apt 或 yum

# Debian/Ubuntu(apt)
sudo apt-get update
sudo apt-get install -y mongodb-org
# RHEL/CentOS(yum)
sudo yum install -y mongodb-org

若需要限制具体版本进行稳定性控制,可在安装命令中指定版本号,例如:mongodb-org=6.0.5及其相关子包,确保后续升级可控。

# 指定版本安装示例(请按实际版本替换)
sudo apt-get install -y mongodb-org=6.0.5 mongodb-org-server=6.0.5 mongodb-org-shell=6.0.5 mongodb-org-tools=6.0.5

2.3 版本选择与锁定

为了实现平滑升级与稳定性,建议选择长期支持的版本分支并在后续维护中进行有计划的升级。锁定版本有助于避免意外升级带来的兼容性问题,在确定部署架构后再执行版本锁定操作。

# 示例:将 MongoDB 客户端与服务端版本对齐
# 具体命令请参考你使用的发行版文档

3. 启动与验证

3.1 启动 MongoDB 服务

安装完成后,启动 MongoDB 服务并设置开机自启,确保数据库在系统启动后自动可用。以下命令是常见的 Systemd 场景。

Linux上MongoDB快速安装教程:从环境准备到启动与验证的完整步骤

sudo systemctl start mongod
sudo systemctl enable mongod
sudo systemctl status mongod

如果你在非 Systemd 的系统上运行,可能需要使用 service 命令,但在大多数现代发行版中,systemctl 是推荐的控制方式

3.2 验证连接与基本健康检查

初次验证时,应确认 MongoDB 服务正在监听默认端口 27017,且数据库可以接受连接。可通过内置 shell 或 mongosh 进行基本连接测试。

# 简单 ping 验证
mongosh --eval "db.runCommand({ ping: 1 })"
# 如返回 { ok: 1 }, 表示连接正常

进一步检查数据库版本与默认数据库结构,以确认安装无误。在测试环境中创建一个测试用数据库与集合有助于快速校验

mongosh
> use test
> db.createCollection("healthcheck")
> db.healthcheck.insert({ status: "ok", ts: new Date() })
> db.healthcheck.findOne({ status: "ok" })

3.3 基本安全与网络访问控制(简要设置)

生产环境中,为了降低暴露风险,建议对 MongoDB 引入基础的安全策略,例如启用认证、绑定监听地址以及设置防火墙。默认情况下 MongoDB 监听 27017 端口,需要确保该端口在受控网络中使用。

# 仅示意,不代表完整配置
# 打开防火墙端口(若使用 UFW)
sudo ufw allow 27017
sudo ufw reload

到此为止,你已经完成了从环境准备到启动与验证的完整步骤,且关键环节如 禁用 Swap、设置系统参数、配置官方仓库、安装 MongoDB、启动服务以及基本连接验证都已覆盖,确保在 Linux 环境中能够快速落地并进行后续的应用开发与数据管理。

广告

操作系统标签