MongoDB java连接问题

时间:2011-05-09 15:59:58

标签: java mongodb

我正在尝试运行以下代码:

public static void main(String args[]) throws UnknownHostException, MongoException{
        Mongo m = new Mongo( "localhost", 27017 );
        DB db = m.getDB( "test" );


        Set<String> coll = db.getCollectionNames();
    }

但出于某种原因我遇到了连接问题:

bc:java.net.ConnectException:拒绝连接:连接

编辑:Nvm我忘了在后台运行数据库

1 个答案:

答案 0 :(得分:6)

显然,请确保您可以在“localhost”端口27017上连接到MongoDB。您应该能够打开没有参数的MongoDB shell并获得提示:

» mongo
MongoDB shell version: 1.8.1
connecting to: test
> 

如果你不能答案显而易见:MongoDB没有运行。您需要确保启动MongoDB服务器进程。 MongoDB文档中有一些Quickstart Guides可以引导您选择所选平台上的过程。

否则,您没有指出您所在的平台,但是Java在Mac OS X上解析某些主机名如“localhost”存在问题......这实际上是一个Java问题而不是MongoDB Java驱动程序问题。

当要求将“localhost”从主机名解析为InetSocketAddr时,Java for Mac通常会返回计算机外部界面的IP。像Homebrew的Mac MongoDB的一些安装程序将侦听IP地址锁定为127.0.0.1,这可能导致连接到“localhost”在Mac上完全失败。