Hi,请  登录  或  注册

Navicat 连接 MongoDB 提示 wire version 5 失败的解决方法图文教程

在使用 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 报错界面
Navicat 连接 MongoDB 提示 wire version 5 失败的解决方法图文教程


从报错内容可以看出,问题的本质是:

当前使用的 MongoDB 版本较低(wire version 5),
而当前 Navicat 默认使用的是较新的 MongoDB 驱动,
两者驱动协议不兼容,导致连接失败。

这种情况在 MongoDB 3.4 或更低版本中非常常见。


第一步:打开 Navicat 新建 MongoDB 连接界面

启动 Navicat 后,点击:

连接 → MongoDB → 新建连接

进入 MongoDB 的连接配置窗口。


第二步:切换到“高级”设置选项卡

在连接配置窗口上方,可以看到多个选项卡:

常规
高级
数据库
SSL
SSH

点击“高级”。


切换到高级选项,选择客户端驱动程序
Navicat 连接 MongoDB 提示 wire version 5 失败的解决方法图文教程


进入高级页面后,找到这一项:

客户端驱动程序

这里默认一般是:

默认

此时需要手动改成:

旧版

这个选项的作用是让 Navicat 使用老版本 MongoDB 连接协议,从而兼容低版本 MongoDB 服务端。


第三步:返回“常规”选项卡填写连接信息

切换回“常规”页面,按正常方式填写连接参数:

连接名:自定义
连接方式:Standalone
主机:localhost 或服务器 IP
端口:27017
验证:None(如数据库未设置账号密码)

确认无误后,点击“测试连接”。


测试连接成功弹窗
Navicat 连接 MongoDB 提示 wire version 5 失败的解决方法图文教程


如果设置正确,此时会弹出:

连接成功

说明 MongoDB 已可正常通过 Navicat 进行管理和操作。


问题总结说明

本问题并不是:

MongoDB 安装错误
数据库端口被占用
防火墙拦截
数据库服务未启动

而是典型的:

客户端驱动协议版本高于服务端协议版本

只要将 Navicat 的客户端驱动程序切换为“旧版”,即可完美兼容 MongoDB 3.6 以下的所有版本。


适用环境说明

该方法适用于以下场景:

Windows 本地 MongoDB 环境
云服务器 MongoDB 环境
整合环境 MongoDB
老项目配套数据库
Navicat Premium 各版本

无需升级 MongoDB
无需重装 Navicat
无需改动任何数据库数据

所有原有数据不会受到任何影响。

 

文章名称:Navicat 连接 MongoDB 提示 wire version 5 失败的解决方法图文教程
除非特别注明,本站所有文章均为原创,转载请注明出处:264玫瑰资源库
部分教程资源来源于互联网,请谨慎辨别广告内容,避免上当受骗!

评论 抢沙发

登录

找回密码

注册