MongoDB是一个NoSQL数据库系统,一个数据库可以包含多个集合(Collection),每个集合对应于关系数据库中的表;而每个集合中可以存储一组由列标识的记录,列是可以自由定义的, 非常灵活,由一组列标识的实体的集合对应于关系数据库表中的行。下面通过熟悉MongoDB的基本管理命令,来了解MongoDB提供的DBMS的基本功 能和行为。

MongoDB命令帮助系统

在安装MongoDB后,启动服务器进程(mongod),可以通过在客户端命令mongo实现对MongoDB的管理和监控。看一下MongoDB的命令帮助系统:

这是MongoDB最顶层的命令列表,主要告诉我们管理数据库相关的一些抽象的范畴:数据库操作帮助、集合操作帮助、管理帮助。如果你想了解数据库操作更详细的帮助命令,可以直接使用db.help(),如下所示:

对数据库进行管理和操作的基本命令,可以从上面获取到。如果想要得到更多,而且每个命令的详细用法,可以使用上面列出的db.listCommands()查询。

另一个比较基础的是对指定数据库的集合进行操作、管理和监控,可以通过查询db.mycoll.help()获取到:

有关数据库和集合管理的相关命令,是最基础和最常用的,如集合查询、索引操作等。

基本命令及实例

下面通过实际的例子来演示一些常见的命令:

(一)基本命令

1、show dbs

显示当前数据库服务器上的数据库
2、use pagedb
 切换到指定数据库pagedb的上下文,可以在此上下文中管理pagedb数据库以及其中的集合等
3、show collections
显示数据库中所有的集合(collection)
4、db.serverStatus()  
查看数据库服务器的状态。有时,通过查看数据库服务器的状态,可以判断数据库是否存在问题,如果有问题,如数据损坏,可以及时执行修复。
5、查询指定数据库统计信息
use fragment
db.stats()
查询结果示例如下所示:
显示fragment数据库的统计信息。
 
6、查询指定数据库包含的集合名称列表
db.getCollectionNames()

(二)基本DDL和DML

1、创建数据库
如果你习惯了关系型数据库,你可能会寻找相关的创建数据库的命令。在MongoDB中,你可以直接通过use dbname来切换到这个数据库上下文下面,系统会自动延迟创建该数据库,例如:
可见,在use指定数据库后,并且向指定其中的一个集合并插入数据后,数据库和集合都被创建了。
2、删除数据库
直接使用db.dropDatabase()即可删除数据库。
3、创建集合
可以使用命令db.createCollection(name, { size : ..., capped : ..., max : ... } )创建集合,示例如下所示:

4、删除集合

删除集合,可以执行db.mycoll.drop()。

5、插入更新记录

直接使用集合的save方法,如下所示:

待续....http://blog.csdn.net/shirdrn/article/details/7105539

shell命令

 help db.help()                #查看 db 方法

 db.mycoll.help()             #查看集合方法

rs.help()                    #查看 replica set 方法

help admin                   #管理员帮助

help connect                 #连接数据库帮助

help keys                    #快捷键帮助

help misc                    #了解 misc  

help mr                      #mapreduce  

show dbs                     #打印本服务器存在的数据库名称列表

show collections             #打印当前数据库的集合列表

show users                   #打印当前数据库的用户

show profile                 #打印 1s 内的 system.profile

show logs                    #打印 logger 名称

show log [name]              #打印内存中最新的一条日志记录,[name] 默认为 'global'

use <db_name>                #切换数据库

db.foo.find()                #列出集合 foo 中的对象列表

db.foo.find( { a : 1 } )     #列出集合 foo 中满足条件 a== 1 的对象列表

it                           #查看 find 返回列表的其余部分

DBQuery.shellBatchSize = x   #设置 shell 默认显示的项的个数

exit                         #退出 mongodb shell