2016-01-13 121 views
2

我打开与RHC的端口转发,它显示 MongoDB的127.0.0.1:27017 => xxx.x.xxx.x:27017 DOC这里port-forward连接到Openshift的MongoDB与Java远程,超时错误

但我仍然没有运气连接到该mongodb墨盒。我已经尝试了mongo shell 3.0和java MongoClient。 mongo shell返回错误10061 java返回com.mongodb.MongoTimeoutException: Timed out after 10000 ms while waiting for a server that matches AnyServerSelector{}

还有什么可以尝试远程连接到openshift mongodb?

我的代码,我已经对当地的MongoDB测试这个工作正常

String mongoUri = "mongodb://admin:[email protected]:27017/";       
    MongoClient mongoClient; 
    try { 

     mongoClient = new MongoClient(new MongoClientURI(mongoUri)); 

     DB db = mongoClient.getDB("mycoll"); 

     DBCollection cc = db.getCollection("DBObject"); 
     cc.insert(dbo); 
    } 

回答

0

您应该使用下面的连接字符串已经启用,而本地端口转发:

String mongoUri = "mongodb://admin:[email protected]:27017/"; 

由于连接正在通过ssh隧道转发,您需要使用本地端口。请参阅此答案以获取更多信息:OpenShift: How to connect to postgresql from my PC

+0

本地连接正在工作,但我想要的是远程连接。 –

+0

您将进行远程连接,当您执行端口转发时显示的ip/port被转发到远程服务器。 – 2016-01-14 17:30:11

+0

这就是我的想法,但是当我真的运行我的代码时,它给了我errno 10061 –