刚刚安装好了 mongodb 。对着 mongodb in action上的例子敲了下面的代码:

public class TestDBConnect {
@Test
public void testdb() { MongoClient mongoClient = null;
try {
mongoClient = new MongoClient("xx.xx.xx.xx", 27017);
} catch (UnknownHostException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} DB db = mongoClient.getDB("crawler");
DBCollection coll = db.getCollection("sites"); DBObject doc = new BasicDBObject();
String[] tags = { "database", "open-source" }; doc.put("url", "org.mongodb");
doc.put("tags", tags); DBObject attrs = new BasicDBObject();
attrs.put("lastAddress", new Date());
attrs.put("pingtime", 20); doc.put("attrs", attrs); coll.insert(doc); System.out.println("Initial document:n");
System.out.println(doc.toString()); System.out.println("updating pingtime...n");
coll.update(new BasicDBObject("_id", doc.get("_id")),
new BasicDBObject("$set", new BasicDBObject("pingtime", "30"))); DBCursor cursor = coll.find();
System.out.println("After updaten");
System.out.println(cursor.next().toString());
System.out.println("Number of site documents:" + coll.count());
System.out.println("Removing documents..."); coll.remove(new BasicDBObject());
}
}

上面服务器的IP 用XX.XX.XX.XX隐去了,运行之后报了错:

九月 20, 2013 10:19:52 上午 com.mongodb.DBTCPConnector initDirectConnection

警告: Exception executing isMaster command on localhost/xx.xx.xx.xx:27017

java.net.ConnectException: Connection refused: connect

说白了就是连接不上。

说明一下网络情况:

安装了mongodb的是一台Linux服务器,IP是aa.bb.cc.dd,本机运行java程序去链接。

接下来我又尝试了,在本机上运行mongo客户端 使用

mongo aa.bb.cc.dd来连接,同样失败。

不死心,ssh到服务器上,使用mongo aa.bb.cc.dd来连接,失败,我擦!

不加IP,或者使用mongo 127.0.0.1 可以连接上,到这儿我基本猜出了问题的原因了,mongodb的数据库实例被绑定到了127.0.0.1这个IP了,使用外网IP无法访问。

打开/etc/mongodb.conf.

bind_ip = 127.0.0.1这一行替换为

bind_ip = aa.bb.cc.dd。重新运行上面的代码,测试通过。

mongodb的连接问题,绑定IP惹的祸的更多相关文章

  1. mongodb远程连接配置

    mongodb远程连接配置如下: 1.修改配置文件mongodb.conf 命令:vim /etc/mongodb.conf 把 bind_ip=127.0.0.1 这一行注释掉或者是修改成 bind ...

  2. redis绑定ip以及启动和查看启动状态

    改绑定ip: 或许是对redis的了解还不够多的缘故,单单只是从安装和启动来讲,个人觉得好像是比mongodb和mysql要简单一些. 我的安装包是这个:http://download.csdn.ne ...

  3. windows下远程访问Redis,windows Redis绑定ip无效,Redis设置密码无效,Windows Redis 配置不生效,Windows Redis requirepass不生效,windows下远程访问redis的配置

    转载:http://fanshuyao.iteye.com/blog/2384074 一.Redis下载地址: https://github.com/MicrosoftArchive/redis/re ...

  4. windows Redis绑定ip无效,Redis设置密码无效,Windows Redis 配置不生效, Windows Redis requirepass不生效

    windows Redis绑定ip无效,Redis设置密码无效,Windows Redis 配置不生效, Windows Redis requirepass不生效 >>>>&g ...

  5. 多网卡下对ServerSocket以TCP协议绑定IP和端口的测试

    一.引言:之前开发TCP协议的程序(C#里是Socket为主)都是基于主机上只有一个IP的,后来项目里涉及到了主机需要同时连接内外和外网的情况,在该主机上部署着一套WCS系统和一套WMS系统:WCS系 ...

  6. 阿里云服务器redis启动绑定ip 开放端口仍无法访问问题

    今天使用云服务器其redis 始终无法访问.redis.conf 这个配置文件也是改了又改.最后发现 执行redis启动命令时没有带上配置文件.仍然使用默认配置. src/redis-server  ...

  7. [转载]MongoDB 标准连接字符串

    MongoDB 标准连接字符串 mongodb://[username:password@]host1[:port1][,host2[:port2],…[,hostN[:portN]]][/[data ...

  8. 配置公网的域名绑定IP

    1. 在万网.美橙申请了一个域名,当然付完费了.   2. 点击"管理",找到了域名解析   3. 点击"域名解析"   注意"记录值",这 ...

  9. Linux tomcat设置ip地址直接访问,tomcat设置ip地址直接访问,tomcat绑定ip地址

    Linux tomcat设置ip地址直接访问,tomcat设置ip地址直接访问,tomcat绑定ip地址 >>>>>>>>>>>> ...

随机推荐

  1. Thinking in Java——笔记(21)

    Concurrency However, becoming adept at concurrent programming theory and techniques is a step up fro ...

  2. 十六进制string转换UIColor -备用

    - (UIColor *) colorWithHexString: (NSString *) stringToConvert { NSString *cString = [[stringToConve ...

  3. 自制单片机之十五……可串行驱动LCD12864的应用

    在网上搜了一下,ST7920控制器的LCD产品可以提供8位,4位并行和串行接口可选,并行的控制接口的LCD较多,前面的贴子也介绍过,我们在这儿不说了,这儿我们讲的是串口控制LCD12864. 买了块S ...

  4. smarty 内置函数if 等判断

    {if},{elseif},{else} Smarty的{if}条件判断和PHP的if 非常相似,只是增加了一些特性. 每个{if}必须有一个配对的{/if}. 也可以使用{else} 和 {else ...

  5. Android XML文档解析(一)——SAX解析

    ---------------------------------------------------------------------------------------------------- ...

  6. 【转】Android将Activity打成jar包供第三方调用(解决资源文件不能打包的问题)

    Android中引入第三方Jar包的方法(java.lang.NoClassDefFoundError解决办法) 鼠标右键项目,然后属性,然后java buildpath 然后order and ex ...

  7. cf442C Artem and Array

    C. Artem and Array time limit per test 2 seconds memory limit per test 256 megabytes input standard ...

  8. leetcode:Multiply Strings(字符串的乘法)【面试算法题】

    题目: Given two numbers represented as strings, return multiplication of the numbers as a string. Note ...

  9. HDU 4274 Spy's Work (树 DFS)

    给定N个点,每个点都有一个唯一的前驱结点(点1为大boss),每个点的实际权值是子节点的求和值.现在给出某些点的权值的估算(> , = , < ),问这些估算是否会有冲突,现在保证每个点的 ...

  10. c语言指向结构体的指针作为函数参数

    注意 这里包括形参和实参 struct dangdangtest { ]; int num; }; void change(int num)//值传递 新建一个变量接受传递的值 { num = ; } ...