Список всех баз данных mongoDB через драйвер Simba JDBC

Я новичок в MongoDB. Как получить список всех баз данных mongodb через драйвер Simba JDBC. много пробовал, но я могу получить только имя базы данных, через которую я построил URL-адрес подключения. Даже, я не уверен, что это возможно или нет, чтобы получить список всех баз данных?

Я пробовал так: Class.forName("com.simba.mongodb.jdbc4.Driver");

        Connection conn = DriverManager              
          .getConnection("jdbc:mongodb://admin:admin@localhost:27017/admin);

      //In the getConnection parameters, last admin is the name of database. 

        DatabaseMetaData dbmd = conn.getMetaData();

        ResultSet ctlgs = dbmd.getCatalogs();

        while (ctlgs.next()){
            System.out.println("ctlgs="+ctlgs.getString(1));
        }

Но это только дает имя подключенной базы данных. Цените помощь.


person Nishant    schedule 07.04.2018    source источник


Ответы (2)


В URL подключения установите для свойства LoadMetadataTable значение true , по умолчанию оно было false. например jdbc:mongodb://jsmith:pass12345@localhost:18000/TeamRoster?A uthMechanism=SCRAM-SHA-1&LoadMetadataTable=true

person stranger    schedule 18.04.2018

Я получил ответ, играя с драйвером Simba jdbc для mongodb. Фактически, в строке подключения имя базы данных является обязательным. Теперь, если аутентификация включена со стороны mongodb, мы получим только одно имя базы данных в качестве вывода, которое было упомянуто в строке подключения. И если аутентификация отключена, то на выходе мы получим список всех баз данных.

person Nishant    schedule 13.08.2018