Mongodb Can';t连接到Mongo atlas弹簧护套

Mongodb Can';t连接到Mongo atlas弹簧护套,mongodb,spring-boot,Mongodb,Spring Boot,我在连接我的MongoDB Atlas收藏时遇到了一些问题。使用Mongo提供的连接说明,我在我的项目中做到了这一点: MongoClientURI uri = new MongoClientURI( "mongodb+srv://<admin>:<password>@cluster0-jufkk.gcp.mongodb.net/test?retryWrites=true"); MongoClient mongoC

我在连接我的MongoDB Atlas收藏时遇到了一些问题。使用Mongo提供的连接说明,我在我的项目中做到了这一点:

MongoClientURI uri = new MongoClientURI(
                "mongodb+srv://<admin>:<password>@cluster0-jufkk.gcp.mongodb.net/test?retryWrites=true");

            MongoClient mongoClient = new MongoClient(uri);
            MongoDatabase database = mongoClient.getDatabase("test");
            database.getName();
它问我密码,这是打印出来的:

连接到: mongodb://cluster0-shard-00-01-jufkk.gcp.mongodb.net.:27017,cluster0-shard-00-02-jufkk.gcp.mongodb.net.:27017,cluster0-shard-00-00-jufkk.gcp.mongodb.net.:27017/test?authSource=admin&gssapiServiceName=mongodb&replicset=cluster0-shard-0&ssl=true 2019-04-10T15:52:07.396+0200i网络[js]启动新副本集 监视 Cluster0-shard-0/Cluster0-shard-00-01-jufkk.gcp.mongodb.net.:27017,Cluster0-shard-00-02-jufkk.gcp.mongodb.net.:27017,Cluster0-shard-00-00-jufkk.gcp.mongodb.net.:27017 2019-04-10T15:52:07.835+0200i网络 [ReplicaSetMonitor TaskExecutor]已成功连接到 cluster0-shard-00-01-jufkk.gcp.mongodb.net.:27017(现在有1个连接 打开至cluster0-shard-00-01-jufkk.gcp.mongodb.net.:27017,带5 第二次超时)2019-04-10T15:52:07.837+0200 I网络[js] 已成功连接到 cluster0-shard-00-00-jufkk.gcp.mongodb.net.:27017(现在有1个连接 打开至cluster0-shard-00-00-jufkk.gcp.mongodb.net.:27017,带5 第二次超时)2019-04-10T15:52:07.862+0200 I网络 [ReplicaSetMonitor TaskExecutor]将主机更改为 Cluster0-shard-0/Cluster0-shard-00-00-jufkk.gcp.mongodb.net:27017,Cluster0-shard-00-01-jufkk.gcp.mongodb.net:27017,Cluster0-shard-00-02-jufkk.gcp.mongodb.net:27017 从…起 Cluster0-shard-0/Cluster0-shard-00-00-jufkk.gcp.mongodb.net.:27017,Cluster0-shard-00-01-jufkk.gcp.mongodb.net.:27017,Cluster0-shard-00-02-jufkk.gcp.mongodb.net.:27017 2019-04-10T15:52:07.992+0200i网络 [ReplicaSetMonitor TaskExecutor]已成功连接到 cluster0-shard-00-00-jufkk.gcp.mongodb.net:27017(现在有1个连接 打开cluster0-shard-00-00-jufkk.gcp.mongodb.net:27017,带5 第二次超时)2019-04-10T15:52:08.003+0200 I网络[js] 已成功连接到 cluster0-shard-00-01-jufkk.gcp.mongodb.net:27017(现在有1个连接 开放至cluster0-shard-00-01-jufkk.gcp.mongodb.net:27017,带5 第二次超时)2019-04-10T15:52:08.245+0200 I网络[js]标记 主机cluster0-shard-00-01-jufkk.gcp.mongodb.net:27017 as失败:: 原因::Location40659:无法连接到新的副本集主机 [cluster0-shard-00-01-jufkk.gcp.mongodb.net:27017],错误:Location8000: 身份验证失败。2019-04-10T15:52:08.289+0200i网络 [ReplicaSetMonitor TaskExecutor]已成功连接到 cluster0-shard-00-02-jufkk.gcp.mongodb.net:27017(现在有1个连接 打开cluster0-shard-00-02-jufkk.gcp.mongodb.net:27017,带5 第二次超时)2019-04-10T15:52:08.406+0200 I网络[js]标记 主机cluster0-shard-00-00-jufkk.gcp.mongodb.net:27017 as失败:: 原因::Location8000:无法对副本集节点进行身份验证 cluster0-shard-00-00-jufkk.gcp.mongodb.net:27017::原因: 身份验证失败。2019-04-10T15:52:08.566+0200i网络[js] 正在将主机集群0-shard-00-02-jufkk.gcp.mongodb.net:27017标记为 失败::原因::Location8000:无法针对进行身份验证 副本集节点cluster0-shard-00-02-jufkk.gcp.mongodb.net:27017:: 原因::身份验证失败。2019-04-10T15:52:08.734+0200 I 网络[js]标记主机 cluster0-shard-00-01-jufkk.gcp.mongodb.net:27017 as失败::导致 by::Location40659:无法连接到新的副本集主机 [cluster0-shard-00-01-jufkk.gcp.mongodb.net:27017],错误:Location8000: 身份验证失败。2019-04-10T15:52:08.736+0200电子查询[js] 错误:无法对副本集节点进行身份验证 cluster0-shard-00-01-jufkk.gcp.mongodb.net:27017::原因::无法 连接到新的副本集主机 [cluster0-shard-00-01-jufkk.gcp.mongodb.net:27017],错误:Location8000: 身份验证失败。:connect@src/mongo/shell/mongo.js:343:13 @(连接):2:6异常:连接失败


我的证件是正确的。用户名包含@,因此我尝试了使用%40和不使用它,但结果是一样的。我如何进一步检查问题出在哪里?

您是否尝试过将用户名更改为没有特殊字符的名称,以查看是否有效?例如将用户名设置为类似于
myUser123
?@MichaelPlatt很遗憾,我无法更改用户名,因为它不是我的数据库:\n如果它不是你的数据库,那么你确定你有权连接吗?也许他们封锁了所有IP,除了他们拥有的白名单IP?你能与某人联系并询问他们吗?从我的浏览器,我可以连接到它。登录凭据与你通过命令行登录web时使用的相同吗?此外,当您通过浏览器登录时,是否可以通过具有这些凭据的终端连接到mongo数据库?您是否尝试过将用户名更改为不带特殊字符的名称,以查看其是否有效?例如将用户名设置为类似于
myUser123
?@MichaelPlatt很遗憾,我无法更改用户名,因为它不是我的数据库:\n如果它不是你的数据库,那么你确定你有权连接吗?也许他们封锁了所有IP,除了他们拥有的白名单IP?你能与某人联系并询问他们吗?从我的浏览器,我可以连接到它。登录凭据与你通过命令行登录web时使用的相同吗?此外,当您通过浏览器登录时,是否可以通过具有这些凭据的终端连接到mongo数据库?
mongo "mongodb+srv://cluster0-jufkk.gcp.mongodb.net/test" --username username