MongoDB的一些常用命令

 

  • mongo ip:port/dbname 连接到远程服务器的mongodb,如果不加后面的参数,则默认连接到本地的test库 
  • use test 使用test这个库
  • show collections 查看当前库下面的所有表名称
  • db.skycomment_1.findOne() 查找该表中的1条记录

mongo 后面可以指定一个JS文件让服务端执行,例如我们的一个数据迁移脚本:
function getCollectionNames(startWith){
  array = [];
  db.getMongo().getDB('comment').getCollectionNames().forEach(function(obj){
  if(obj.indexOf(startWith)==0)
    array.push(obj);
  });
  return array;
}

function migrateComment(cmt,appId){
    cmt.appId=appId;
    cmt.topicId=cmt.topicid
    delete cmt.topicid
    db.getMongo().getDB('comment')["Comment"].save(cmt)
}

getCollectionNames("skycomment_").forEach(function(obj){
  db[obj].find().forEach(function(cmt){
      migrateComment(cmt,parseInt(obj.substring(11)));
  })
});
 里面全部为JS语法,使用起来非常方便,脚本的执行速度蛮高的。

使用mongo的Java客户端时,如果需要打印出执行语句,在启动程序时,需要加入JVM启动参数: -DDB.SHOW=true ,由于打印语句使用的system.out.print,所以在生产环境一定不能使用这个参数。

mongo使用时一定别忘了索引的创建,通常一个好的索引可以将查询执行时间缩短至1/5以上

未完待续
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值