MongoDB工具 >MongoDB指南针 >故障排除 > 指南针连接错误
当Compass尝试连接到指定主机和端口上的数据库时,连接失败。
该错误通常在以下情况下发生:
该问题的解决方案可能取决于您的MongoDB环境的配置方式。选择适合您的MongoDB环境的选项卡以查看可能的解决方案:
如果您拥有自托管的MongoDB服务器,副本集或集群,请尝试以下解决方案。
指南针必须连接到正在运行的MongoDB实例。确保已 安装MongoDB并具有正在运行的mongod进程。您还应该检查运行MongoDB实例的端口是否与您在Compass connect对话框中提供的端口匹配。
如果您最近安装了MongoDB数据库服务器,并且无法建立与该服务器的初始连接,请验证您是否net.bindIp
在服务器配置文件中指定了有效设置。
如果您的自托管服务器正在通过侦听外部网络net.bindIp
,请验证您是否在Compass连接对话框中正确指定了
主机名和端口。
您的MongoDB集群或服务器可能已关闭,或者其主机名已更改。请与数据库管理员联系,以获取有关数据库状态的更新。
如果您认为防火墙可能正在积极阻止与数据库所运行的端口的连接,请尝试从其他位置进行连接,例如家庭或网吧网络。您也可以访问http://portquiz.net/ 以测试与其他端口的连接。
如果要连接到Atlas群集,请首先按照Atlas文档中的“ 通过指南针连接”页面中描述的步骤进行操作。该页面上的步骤将帮助确保针对Atlas优化连接设置。
您的MongoDB集群或服务器可能已关闭,或者其主机名已更改。请与数据库管理员联系,以获取有关数据库状态的更新。
如果您认为防火墙可能正在主动阻止与数据库的连接,请尝试从其他位置进行连接,例如家庭或网吧网络。
Atlas群集在端口27017上运行。您必须能够访问此端口才能访问群集。要检查您的本地网络是否阻止与端口27017的连接,请访问 http://portquiz.net:27017/。
Atlas仅允许从项目IP白名单中列出的地址连接到群集。确保已将IP地址列入白名单,以便可以连接到群集。
使用Compass时,您可能处于无法执行任何写入操作且只能读取数据的状态。
检查您的副本集名称是否正确。仅当副本集名称正确时,Compass才能正确识别主要数据库。
如果您的群集托管在Atlas中,则可以使用以下过程获取正确的副本集名称:
导航到“ Atlas 群集”视图。
单击连接以获取所需的群集。
单击“ 使用MongoDB Compass连接”。
复制提供的连接字符串。
打开MongoDB指南针。
单击“ 是”以自动填写连接设置。
您不能在Compass Readonly 版本中执行写入操作。您可以通过打开顶级Compass下拉菜单并选择About MongoDB Compass来检查您的Compass版本 。
要执行写入操作,必须下载其他版本的MongoDB Compass。有关Compass版本之间差异的更多信息,请参见 Compass版本的功能。
此错误消息表明您已连接到副本集的辅助成员之一,而没有提供正确的副本集名称,并且需要连接到“ 读取首选项”中的主 副本。
当您尝试使用Compass连接到群集时,您可能会遇到一条错误消息,指出“ 身份验证失败”。
此错误消息通常是以下五个条件之一的结果:
你的密码是从复制的连接字符串自动填充连接详细信息后失踪。为了安全起见,Compass要求您在连接对话框中手动输入密码。
您的用户名和/或密码不正确。
您尚未为Atlas集群配置任何MongoDB用户。
您没有选择正确的身份验证方法。
您没有指定正确的身份验证数据库。此设置对应于authSource连接字符串选项。
注意
对于Atlas群集,身份验证数据库通常为admin
。