MongoDB基本命令

MongoDB是NoSQL数据库系统中比较流行的数据库之一。它也是最接近关系型数据库的,一个数据库可以包含多个集合(Collection),类似于关系数据库中的表;而每个集合中可以存储一组由列标识的记录,列是可以自由定义的,非常灵活,这就类似于关系数据库表中的每一条记录。下面和大家一起熟悉下MongoDB的基本管理命令。 Continue reading "MongoDB基本命令"

MongoDB 核心将支持全文搜索功能 (2.3.2)

来自 MongoDB 官方 JIRA 的一个新特性报告称 MongoDB 将在 2.3.2 版本中增加全文搜索功能。该功能还是体验到阶段,使用方法包括:

db.adminCommand( { setParameter : "*", textSearchEnabled : true } );

或者是:

./mongod --setParameter textSearchEnabled=true

特性:

  • parsing + stemming for latin languages
  • multi-word scoring
  • phrase matching
  • word negation
  • weights per field
  • additional suffix index fields for coverings
  • additional prefix index fields for partitioning
  • specify language per document

简单使用示例:

> db.foo.insert( { _id: 1 , desc: "the dog is running" } )
> db.foo.insert( { _id: 2 , desc: "the cat is walking" } )
> db.foo.ensureIndex( { "desc": "text" } )
> db.foo.runCommand( "text", { search : "walk" } )
{
     "queryDebugString" : "walk||||||",
     "language" : "english",
     "results" : [
         {
             "score" : 0.75,
             "obj" : {
                 "_id" : 2,
                 "desc" : "the cat is walking"
             }
         }
     ],
     "stats" : {
         "nscanned" : 1,
         "nscannedObjects" : 0,
         "n" : 1,
         "timeMicros" : 330
     },
     "ok" : 1
}

MongoDB 的详细介绍:请点这里
MongoDB 的下载地址:请点这里

Ubuntu12.04下关闭MongoDB的开机启动

网上什么用sysv-rc-conf配置,什么改S开头为K开头什么的方法通通的不管用,因为10.04开始把MongoDB的启动连接到了/lib/init/upstart-job,而后者是调用了/etc/init/mongodb.conf文件里面关于开机的定义,这是新的框架,所以以前的方法通 通不管用了,你用sysv-rc-conf的时候甚至发现mongodb根本禁止在任何runrevel上启动的,而实际情况是,它每次都很淡定地自动启动了。

 
查看/etc/init/mongodb.conf内容
  1. # Ubuntu upstart file at /etc/init/mongodb.conf  
  2.   
  3. limit nofile 20000 20000  
  4.   
  5. kill timeout 300 # wait 300s between SIGTERM and SIGKILL.  
  6.   
  7. pre-start script  
  8.     mkdir -p /var/lib/mongodb/  
  9.     mkdir -p /var/log/mongodb/  
  10. end script  
  11.   
  12. start on runlevel [2345]  
  13. stop on runlevel [06]  
  14.   
  15. #script  
  16.   ENABLE_MONGODB="yes"  
  17.   if [ -f /etc/default/mongodb ]; then . /etc/default/mongodb; fi  
  18.   if [ "x$ENABLE_MONGODB" = "xyes" ]; then exec start-stop-daemon --start --quiet --chuid mongodb --exec  /usr/bin/mongod -- --config /etc/mongodb.conf; fi  
  19. #end script 

 

修改为
 
  1. # Ubuntu upstart file at /etc/init/mongodb.conf  
  2.   
  3. #limit nofile 20000 20000  
  4.   
  5. #kill timeout 300 # wait 300s between SIGTERM and SIGKILL.  
  6.   
  7. #pre-start script  
  8. #    mkdir -p /var/lib/mongodb/  
  9. #    mkdir -p /var/log/mongodb/  
  10. #end script  
  11.   
  12. #start on runlevel [2345]  
  13. #stop on runlevel [06]  
  14.   
  15. #script  
  16. #  ENABLE_MONGODB="yes"  
  17. #  if [ -f /etc/default/mongodb ]; then . /etc/default/mongodb; fi  
  18. #  if [ "x$ENABLE_MONGODB" = "xyes" ]; then exec start-stop-daemon --start --quiet --chuid mongodb --exec  /usr/bin/mongod -- --config /etc/mongodb.conf; fi  
  19. #end script 

 

ubuntu上最新版本mongodb的安装

ubuntu上安装mongodb本可以直接通过sudo apt-get install mongodb 进行安装,只是ubuntu的源上版本比实际mongodb的版本低很多,所以有必要从mongodb的10gen获取最新版本进行安装,安装过程主要需 要将10gen的路径添加到apt-get source list中及key的获取。安装步骤如下:

1、 编辑/etc/apt/sources.list,添加如下内容:

deb http://downloads-distro.mongodb.org/repo/ubuntu-upstart dist 10gen

2、生成GPG key.运行如下命令:

1
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv 7F0CEB10

3、运行apt-get update,更新源,然后即可安装最新版本的mongodb.

1
2
sudo apt-get update
sudo apt-get install mongodb-10gen

4、安装完毕后,输入mongo即可查看是否服务正常启动了。