You need to enable JavaScript to run this app. Ubuntu20.04终端执行mongo命令报错 无法连接本地27017端口Mongo服务
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu20.04终端执行mongo命令报错 无法连接本地27017端口Mongo服务

Ubuntu 20.04 MongoDB 4.4.3 连接报错 Connection refused 解决方案

报错核心逻辑:该错误并非Mongo Shell本身故障,本质是MongoDB服务端进程未正常运行,27017端口无监听进程导致连接被拒绝。

第一步:检查并启动MongoDB服务

  • 先查询服务运行状态,根据安装源匹配对应服务名执行:
    官方MongoDB软件源安装版本执行:sudo systemctl status mongod
    Ubuntu官方apt源安装的Mongo版本执行:sudo systemctl status mongodb
  • 若输出显示服务状态为inactive (dead)或failed,执行对应启动命令:
    官方源版本:sudo systemctl start mongod
    Ubuntu apt源版本:sudo systemctl start mongodb
  • 如需设置Mongo服务开机自启,执行对应命令即可:
    sudo systemctl enable mongod(替换为实际使用的服务名)

第二步:服务启动失败时排查根因

如果启动命令执行后服务仍无法正常运行,查看默认日志定位问题,默认日志路径为/var/log/mongodb/mongod.log,执行以下命令查看最近50条报错:
sudo tail -n 50 /var/log/mongodb/mongod.log
Ubuntu 20.04环境下常见启动失败原因及修复方案:

  • 数据/日志目录权限异常
    默认MongoDB数据目录为/var/lib/mongodb、日志目录为/var/log/mongodb,若之前手动修改过目录所有者或权限,会导致Mongo进程无法写入文件启动失败,执行以下命令修复权限:
    sudo chown -R mongodb:mongodb /var/lib/mongodb /var/log/mongodb
    修复后重新启动Mongo服务即可。
  • 非正常关机残留进程锁文件
    若日志提示Unable to acquire lock for lockfilepath: /var/lib/mongodb/mongod.lock,说明异常关机后残留了进程锁文件,按以下步骤清理:
    1. 停止未正常运行的服务:sudo systemctl stop mongod(替换为实际服务名)
    2. 删除锁文件:sudo rm /var/lib/mongodb/mongod.lock
    3. 重新启动Mongo服务
  • 端口被其他进程占用
    若日志提示addr already in use类报错,执行以下命令查询27017端口的占用进程:
    sudo ss -tulpn | grep 27017
    可选择停止占用该端口的其他进程,或修改MongoDB配置文件/etc/mongod.conf中net.port字段为其他未被占用的端口(如27018),修改后重启服务即可。

第三步:验证连接

服务正常启动后,先执行以下命令确认端口已正常监听:
sudo ss -tulpn | grep 27017
若输出中显示mongod进程已绑定127.0.0.1:27017,直接重新执行mongo命令即可正常连接。

内容的提问来源于stack exchange,提问作者codemaster9090

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.11.05 11:15:05