在 Linux 环境中部署 MongoDB 常因依赖缺失、路径配置不当或权限问题导致启动失败。本文按依赖安装、包下载、环境配置、目录创建与服务启动的顺序,提供可复用的命令与验证方法,帮助开发者一次性完成安装并确认服务正常运行。
安装系统依赖包
MongoDB 在 Linux 平台运行需要 libcurl 与 openssl 等基础依赖。不同发行版的包管理器与包名略有差异,请根据实际系统执行对应命令:
- Red Hat/CentOS:
sudo yum install libcurl openssl - Ubuntu 18.04 LTS ("Bionic")/Debian 10 "Buster":
sudo apt-get install libcurl4 openssl - Ubuntu 16.04 LTS ("Xenial")/Debian 9 "Stretch":
sudo apt-get install libcurl3 openssl
依赖安装完成后即可进入下载环节。若使用较新的 Ubuntu 20.04/22.04 或 Debian 11/12,通常可直接安装 libcurl4 与 openssl,无需额外指定旧版包名。
下载并解压 MongoDB 安装包
访问 MongoDB 官方社区版下载页面(https://www.mongodb.com/try/download/community)选择对应 Linux 发行版与架构的安装包。以下演示以 CentOS 环境为例,获取下载链接后使用 wget 直接拉取:

下载命令示例:
wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-4.4.3.tgz下载完成后解压并将文件移动到目标目录:
tar -zxvf mongodb-linux-x86_64-rhel70-4.4.3.tgz
mv mongodb-src-r4.4.3 /usr/local/mongodb注意:解压后的目录名可能因版本不同而略有差异,请以实际解压结果为准。移动路径可自定义,但需与后续环境变量配置保持一致。
配置环境变量与生效
将 MongoDB 的 bin 目录加入系统 PATH,以便在任意终端直接调用 mongod 与 mongo 命令。编辑系统配置文件:
sudo vi /etc/profile在文件末尾添加如下行(以安装路径 /usr/local/mongodb 为例):
export PATH=/usr/local/mongodb/bin:$PATH保存并退出编辑器后,执行以下命令使配置立即生效:
source /etc/profile可通过 mongod --version 验证环境变量是否配置成功。若提示命令未找到,请检查路径拼写与 source 是否执行。
创建数据与日志目录
MongoDB 默认使用以下目录存储数据与日志,启动前需确保目录存在且当前用户具备读写权限:
- 数据存储目录:
/var/lib/mongodb - 日志文件目录:
/var/log/mongodb
创建目录并设置权限的命令如下:
sudo mkdir -p /var/lib/mongodb
sudo mkdir -p /var/log/mongodb
sudo chown `whoami` /var/lib/mongodb
sudo chown `whoami` /var/log/mongodbmkdir -p 会在目录不存在时自动创建,chown `whoami` 将目录所有者设为当前登录用户,避免启动时因权限不足报错。
启动服务与运行验证
完成上述配置后,使用以下命令启动 MongoDB 服务:
mongod --dbpath /var/lib/mongodb --logpath /var/log/mongodb/mongod.log --fork参数说明:
--dbpath:指定数据存储路径--logpath:指定日志输出文件--fork:以守护进程方式后台运行
启动后查看日志末尾确认服务状态:
tail -10f /var/log/mongodb/mongod.log若日志中出现类似以下内容,说明 MongoDB 已成功监听并等待连接:
{"t":{"$date":"2021-02-05T13:10:40.423+08:00"},"s":"I", "c":"NETWORK", "id":23015, "ctx":"listener","msg":"Listening on","attr":{"address":"/tmp/mongodb-27017.sock"}}
{"t":{"$date":"2021-02-05T13:10:40.424+08:00"},"s":"I", "c":"NETWORK", "id":23015, "ctx":"listener","msg":"Listening on","attr":{"address":"127.0.0.1"}}
{"t":{"$date":"2021-02-05T13:10:40.424+08:00"},"s":"I", "c":"NETWORK", "id":23016, "ctx":"listener","msg":"Waiting for connections","attr":{"port":27017,"ssl":"off"}}看到 Waiting for connections 且端口为 27017 即表示服务已就绪。后续可通过 mongo 客户端或驱动连接数据库进行常规操作。如需开机自启,建议结合 systemd 编写服务单元文件并启用 systemctl enable mongod。
