Java 查询失败,错误代码为13,错误消息为';命令find需要身份验证';在服务器上本地主机:27017
MongoDB和Spring Boot出现了奇怪的错误。 我使用反应式MongoDb库(spring boot starter data MongoDb Reactive)。 当我把url放在application.yml文件中时,它工作得很好Java 查询失败,错误代码为13,错误消息为';命令find需要身份验证';在服务器上本地主机:27017,java,spring,mongodb,spring-boot,reactive,Java,Spring,Mongodb,Spring Boot,Reactive,MongoDB和Spring Boot出现了奇怪的错误。 我使用反应式MongoDb库(spring boot starter data MongoDb Reactive)。 当我把url放在application.yml文件中时,它工作得很好 spring: data: mongodb: uri: mongodb://test01:test01@localhost/test_db 但当我将其移动到MongoConfig类中时,应用程序抛出异常 @EnableReact
spring:
data:
mongodb:
uri: mongodb://test01:test01@localhost/test_db
但当我将其移动到MongoConfig类中时,应用程序抛出异常
@EnableReactiveMongoRepositories
public class MongoDBConfig extends AbstractReactiveMongoConfiguration {
@Bean
public MongoClient mongoClient() {
return MongoClients.create("mongodb://test01:test01@localhost/test_db?authMode=SCRAM-SHA-1");
}
@Override
protected String getDatabaseName() {
return "test_db";
}
}
Caused by: com.mongodb.MongoQueryException: Query failed with error code 13 and error message 'command find requires authentication' on server localhost:27017
at com.mongodb.internal.operation.FindOperation$3.onResult(FindOperation.java:722) ~[mongodb-driver-core-4.0.4.jar:na]
at com.mongodb.internal.operation.OperationHelper$ReferenceCountedReleasingWrappedCallback.onResult(OperationHelper.java:411) ~[mongodb-driver-core-4.0.4.jar:na]
at com.mongodb.internal.operation.CommandOperationHelper$10.checkRetryableException(CommandOperationHelper.java:493) ~[mongodb-driver-core-4.0.4.jar:na]
例外
@EnableReactiveMongoRepositories
public class MongoDBConfig extends AbstractReactiveMongoConfiguration {
@Bean
public MongoClient mongoClient() {
return MongoClients.create("mongodb://test01:test01@localhost/test_db?authMode=SCRAM-SHA-1");
}
@Override
protected String getDatabaseName() {
return "test_db";
}
}
Caused by: com.mongodb.MongoQueryException: Query failed with error code 13 and error message 'command find requires authentication' on server localhost:27017
at com.mongodb.internal.operation.FindOperation$3.onResult(FindOperation.java:722) ~[mongodb-driver-core-4.0.4.jar:na]
at com.mongodb.internal.operation.OperationHelper$ReferenceCountedReleasingWrappedCallback.onResult(OperationHelper.java:411) ~[mongodb-driver-core-4.0.4.jar:na]
at com.mongodb.internal.operation.CommandOperationHelper$10.checkRetryableException(CommandOperationHelper.java:493) ~[mongodb-driver-core-4.0.4.jar:na]
在代码中使用时,连接字符串似乎不起作用
你知道吗?
请提供帮助。您应该指定
authSource
,如下所示
mongodb://test01:test01@localhost/test_db?authSource=admin
您应该指定
authSource
,如下所示
mongodb://test01:test01@localhost/test_db?authSource=admin
还是一样的例外。数据库名称是特定的test_DB。Spring的文档说,您可以在服务器或authSource@Doanh你能做到吗?还是一样的例外。数据库名称是特定的test_DB。Spring的文档说,您可以在服务器或authSource@Doanh你能做到这一点吗?