mongodb入门

[b]今天刚接触mongodb,没什么好说的,在这里直接列出一些mongodb的常见问题及解决方案[/b]

[size=x-small][color=red]1.怎样让mongodb在虚拟机的后台运行?[/color[/size]
答:【./mongod -dbpath=/data/db -logpath=/data/log/mongo.log -auth -fork】,注意:1.在mongodb的bin目录下运行此命令,2.需要手动创建【/data/log/mongo.log】这个文件(因为mongodb不会帮你创建),3.【-auth】表示启动用户权限校验,4.【-fork】启用后台运行,这句才是重点!如有不懂请查阅附件中的【MongoDB_权威指南.pdf】,关于后台启动详见17页【Dameon方式启动】

[color=red]2.如何创建mongodb用户?[/color]
答:1.【# ./mongo】、2.【show dbs】、3.【db.addUser('thinknet','thinknet1234')】、4.【db.auth('thinknet','thinknet1234')】(返回1代表认证通过),注意一定要选择一个数据库之后再添加用户,要不然这个用户是无法认证通过的,也就是【use xxxDataBaseName】

[color=red]3.mongodb如何连接带有用户权限的数据库?[/color]
public static void main(String[] args)throws Exception
{
Mongo mongo = new Mongo("192.168.0.30", 27017);

DB db = mongo.getDB("TNd_record");

System.out.println(db.authenticate("thinknet", "thinknet1234".toCharArray()));
}


[size=x-small][color=red]4.如何使用java代码查询带有日期的数据?[/color][/size]

public static void main(String[] args)
{
try
{
Mongo mongo = new Mongo("192.168.0.26",27017);
// 连接名为TNd_record的数据库,假如数据库不存在的话,mongodb会自动建立
DB db = mongo.getDB("TNd_record");
// 权限校验
db.authenticate("lsz", "lsz".toCharArray());
// 获取表
DBCollection collection = db.getCollection("TNt_healthlist");
// 创建查询
BasicDBObject query = new BasicDBObject();
// $gte:表示 “大于等于”此日期
query.put("TNc_time", new BasicDBObject("$gte","2014-02-12 00:00:00"));
// $lt:表示 “小于”此日期
query.put("TNc_time", new BasicDBObject("$lt","2014-02-16 15:00:00"));
// 执行查询
DBCursor cursor = collection.find(query);

while(cursor.hasNext())
{
// 打印查询结果
System.out.println(cursor.next());
}

}
catch (UnknownHostException e)
{
// 这样打印是非常不好的习惯,建议采用log记录
e.printStackTrace();
}
}

[color=red]5.服务器断电被关机,mongodb非正常关闭,导致服务无法启动?[/color]
答:先要删除(-dbpath)/data/db/mongod.lock这个锁文件,然后再启动mongodb服务ok

[color=red]6.linux上安装mongodb[/color]
答:1.【cd /home/apps】 2.在线下载mongodb包【curl -O http://fastdl.mongodb.org/linux/mongodb-linux-x86_64-1.6.3.tgz】 3.解压mongodb包【tar mongodb-linux-x86_64-1.6.3.tgz】 4.完成解压,赋值执行权限【# chmod -R 755 *】 5.进入mongodb中的bin目录,后台启动mongodb(参照[color=red]第1问[/color]),完成安装。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值