小编Yua*_* Wu的帖子

使用身份验证连接到 MongoDB 失败

我在版本 3 中使用 MongoDB,我创建了一个名为“logMonitor”的数据库并创建了一个用户,如:

{
    "_id" : "logMonitor.log",
    "user" : "log",
    "db" : "logMonitor",
    "roles" : [
        {
            "role" : "readWrite",
            "db" : "logMonitor"
        }
    ]
}
Run Code Online (Sandbox Code Playgroud)

当我使用用户“log”通过 shell 连接到数据库时,它返回success,就像这样:

[jboss@chonggouapp mongodb]$ mongo logMonitor -u "log" -p "log"

MongoDB 外壳版本:3.0.6

连接到:logMonitor

但是,使用以下代码通过 Java 连接失败。

    ServerAddress addr = new ServerAddress("10.46.20.65", 27017);
    
    MongoCredential credential = MongoCredential.createMongoCRCredential(
            "log", "logMonitor", "log".toCharArray());
    
    MongoClientOptions options = MongoClientOptions.builder()
            .serverSelectionTimeout(1000)
            .build();
    MongoClient mongoClient = new MongoClient(addr, Arrays.asList(credential), options);
    
    MongoDatabase db = mongoClient.getDatabase("logMonitor");
    
    long c = db.getCollection("sysLog").count(); …
Run Code Online (Sandbox Code Playgroud)

java mongodb mongodb-java

5
推荐指数
1
解决办法
2万
查看次数

标签 统计

java ×1

mongodb ×1

mongodb-java ×1