繁体   English   中英

使用Java的3.0.0驱动程序连接到MongoDB 2.6.3(Eclipse)

[英]Connection to MongoDB 2.6.3 using 3.0.0 driver from Java (eclipse)

我使用3.0.0驱动程序连接到mongodb 2.6.3的简单程序失败,并显示“命令失败,错误59:服务器上没有这样的cmd:saslStart”。

非常感谢任何见解。

    public static void main(String[] args) {
    MongoCredential credential = MongoCredential.createCredential(MY_TEST_DATABASE_USER, MY_TEST_DATABASE, MY_TEST_DATABASE_PWD);
    // MongoCredential credential = MongoCredential.createScramSha1Credential(MY_TEST_DATABASE_USER, MY_TEST_DATABASE, MY_TEST_DATABASE_PWD); // this failed as well
    try (MongoClient mongoClient = new MongoClient(new ServerAddress(DB_SERVER_2_6_3, DB_PORT), Arrays.asList(credential))) {

        MongoDatabase mdb = mongoClient.getDatabase(MY_TEST_DATABASE);

        MongoCollection<Document> coll = mdb.getCollection(MY_TEST_COLLECTION);

        if (coll != null) {
            System.out.println(coll.find().first());
        }
    }
}

通过反复试验弄清楚。 (对此问题,mongo在线支持/文档​​感到失望)在创建凭据时使用了“ admin”数据库。 通过查看Robomongo客户端中的连接设置可以解决此问题。

MongoCredential credential = MongoCredential.createCredential(MY_TEST_DATABASE_USER, "admin", MY_TEST_DATABASE_PWD);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM