在使用 Navicat 连接 MongoDB 数据库时,部分用户会遇到无法连接的情况,弹出错误提示如下:
cannot connect to mongodb
Server at localhost:27017 reports wire version 5, but this version of libmongoc requires at least 6 (MongoDB 3.6)
这个问题在本地开发环境、老版本 MongoDB 或部分整合环境中非常常见。本文通过实测整理了一套最简单、最快速的解决方法,不需要升级数据库版本,也不需要重新安装 MongoDB。
只需修改 Navicat 里的一个选项即可恢复连接。
下面按步骤操作。
Navicat 连接 MongoDB 报错界面

从报错内容可以看出,问题的本质是:
当前使用的 MongoDB 版本较低(wire version 5),
而当前 Navicat 默认使用的是较新的 MongoDB 驱动,
两者驱动协议不兼容,导致连接失败。
这种情况在 MongoDB 3.4 或更低版本中非常常见。
第一步:打开 Navicat 新建 MongoDB 连接界面
启动 Navicat 后,点击:
连接 → MongoDB → 新建连接
进入 MongoDB 的连接配置窗口。
第二步:切换到“高级”设置选项卡
在连接配置窗口上方,可以看到多个选项卡:
常规
高级
数据库
SSL
SSH
点击“高级”。
切换到高级选项,选择客户端驱动程序

进入高级页面后,找到这一项:
客户端驱动程序
这里默认一般是:
默认
此时需要手动改成:
旧版
这个选项的作用是让 Navicat 使用老版本 MongoDB 连接协议,从而兼容低版本 MongoDB 服务端。
第三步:返回“常规”选项卡填写连接信息
切换回“常规”页面,按正常方式填写连接参数:
连接名:自定义
连接方式:Standalone
主机:localhost 或服务器 IP
端口:27017
验证:None(如数据库未设置账号密码)
确认无误后,点击“测试连接”。
测试连接成功弹窗

如果设置正确,此时会弹出:
连接成功
说明 MongoDB 已可正常通过 Navicat 进行管理和操作。
问题总结说明
本问题并不是:
MongoDB 安装错误
数据库端口被占用
防火墙拦截
数据库服务未启动
而是典型的:
客户端驱动协议版本高于服务端协议版本
只要将 Navicat 的客户端驱动程序切换为“旧版”,即可完美兼容 MongoDB 3.6 以下的所有版本。
适用环境说明
该方法适用于以下场景:
Windows 本地 MongoDB 环境
云服务器 MongoDB 环境
整合环境 MongoDB
老项目配套数据库
Navicat Premium 各版本
无需升级 MongoDB
无需重装 Navicat
无需改动任何数据库数据
所有原有数据不会受到任何影响。












![[源码分享] 创胜系列定制版本嘉年华房卡源代码【开发引擎Cocos Creator2.4.3】-](https://www.264rose.com/wp-content/uploads/2024/10/c4ca4238a0b9238-10.jpg)




