MongoDB 数据库命令操作
2015-11-29 16:37
513 查看
1、创建数据库其实在MongoDB中并不需要创建集合。当插入一些文档时MongoDB会自动创建集合。5、删除集合http://www.yiibai.com/mongodb/mongodb_quick_guide.html
>usedatabase_name//如果数据库不存在,将创建一个新的数据库,否则将返回现有的数据库;>db//检查当前选择的数据库;>showdbs//查询数据库列表,新创建的数据库不会在于列表中。要显示的数据库,需要至少插入一个文档进去;2、向数据库插入数据
db.COLLECTION_NAME.insert(document)>db.student.insert({sno:1001,name:"sxj",sex:"male"})或者>db.student.save({sno:1002,name:"sxj",sex:1})如果要以单个查询插入多个文档,可以通过文档insert()命令的数组方式。3、删除数据库>db.dropDatabase()//用于删除现有的数据库;4、创建集合db.createCollection(name,options)用于创建集合,name(String类型)是要创建集合的名称,options(Document类型,可选项)是一个文档,用于指定集合的配置(指定有关内存大小和索引选项)。
>db.createCollection("student")//创建集合student
>showcollections//查看创建的集合>db.createCollection("mycollection",{capped:true,autoIndexID:true,size:6142800,max:10000})
>db.COLLECTION_NAME.drop()//从数据库中删除集合;6、查询文档
>db.COLLECTION_NAME.find()
>db.
COLLECTION_NAME
.find().pretty()//将结果格式化显示;
>db.COLLECTION_NAME.findOne(condition)//不能用pretty()方法
不同的查询方法7、更新文档MongoDB的update()和save()方法用于更新文档到一个集合。update()方法将现有的文档中的值更新,而save()方法使用传递到save()方法的文档替换现有的文档。http://database.51cto.com/art/201207/350718.htmlimit(number)方法,限制查出的记录数sort(number)方法,用于跳过的文件数skip()方法,文档排序,使用1和-1指定排序顺序。1用于升序,而-1是用于降序。
>db.COLLECTION_NAME.update(SELECTIOIN_CRITERIA,UPDATED_DATA)
>db.student.update({'name':'sxj'},{$set:{'name':'zhangsan'}})8、删除文档MongoDB的remove()方法用于从集合中删除文档。remove()方法接受两个参数。一个是标准缺失,第二是justOne标志。deletioncriteria:根据文件(可选)删除条件将被删除。justOne:(可选)如果有多个记录,并要仅删除第一条记录,那么设置justOne为true或1,只删除一个文档。
>db.COLLECTION_NAME.remove(DELLETION_CRITTERIA)
>db.student.remove({'name':'sxj'})
>db.COLLECTION_NAME.remove(DELETION_CRITERIA,1) 如果没有指定删除条件,则MongoDB将从集合中删除整个文件。
>db.student.remove({})
9、MongoDB投影mongodb投影意义是只选择需要的数据,而不是选择整个一个文档的数据。如果一个文档有5个字段,只需要显示3个,只从中选择3个字段。MongoDB的find()方法,解释了MongoDB中查询文档接收的第二个可选参数是要检索的字段列表。在MongoDB中,当执行find()方法,那么它会显示一个文档的所有字段。要限制这一点,需要设置字段列表值为1或0。1是用来显示字段,而0被用来隐藏字段。
>db.COLLECTION_NAME.find({},{KEY:1})
10、MongoDB索引 索引支持查询高效率执行。如果没有索引,MongoDB必须扫描集合中的每一个文档,然后选择那些符合查询语句的文档。若需要MongoDB来处理大量数据,扫描是非常低效的。 索引是特殊的数据结构,存储在一个易于设置遍历形式的数据的一小部分。索引存储在索引中指定特定字段的值或一组字段,并排序字段的值。 要创建索引,需要使用MongoDB的ensureIndex()方法。>db.COLLECTION_NAME.ensureIndex({KEY:1})//这里键是要创建索引字段,1是按名称升序排序。若以按降序创建索引,需要使用-1.11、MongoDB聚合聚合操作处理数据记录并返回计算结果。从多个文档聚合分组操作数值,并可以执行多种对分组数据业务返回一个结果。在SQL中的count(*),使用groupby与mongodb的聚合是等效的。对于MongoDB的聚合,使用的是aggregate()方法。
>db.COLLECTION_NAME.aggregate(AGGREGATE_OPERATION)关闭已经运行的MongoDB服务器。现在,通过指定--replSet选项启动MongoDB服务器。--replSet的基本语法如下:mongod--port"PORT"--dbpath"YOUR_DB_DATA_PATH"--replSet"REPLICA_SET_INSTANCE_NAME"例子:12、复制副本要转换为副本集,按照以下的步骤:
mongod--port27017--dbpath"D:\MongoDB\data\bin"--replSetrs0这将启动一个名为rs0的一个mongod实例,端口为:27017现在打开启动命令提示符,然后连接到mongod实例在Mongo的客户端使用命令rs.initiate()来启动一个新的副本集要检查副本设置配置,则使用命令rs.conf()要检查副本集发行的状态,使用命令rs.status()13、备份与恢复
>mongodump//转储服务器的所有数据到转储目录>mongorestore//从备份目录恢复所有的数据reference:
相关文章推荐
- MongoDB----在Mac下配置安装教程
- MongoDB学习笔记一
- 8天学通MongoDB——第八天 驱动实践
- 8天学通MongoDB——第七天 运维技术
- 8天学通MongoDB——第六天 分片技术
- 8天学通MongoDB——第五天 主从复制
- 8天学通MongoDB(mark)
- 8天学通MongoDB——第四天 索引操作
- windows下mongodb安装与使用整理
- mongodb删除数据 报 E QUERY Error: remove needs a query 的错误
- 8天学通MongoDB——第三天 细说高级操作
- 在 Win8 下安装 MongoDB
- MongoDB对文件的增、删、查
- java中使用mongodb的几种方式
- 基于Nodejs+express4+Mongodb+Angularjs建立web项目
- Node.js + Express + Mongodb 开发搭建个人网站(三)
- MongoDB 分片
- MongoDB 副本集
- MongoDB与内存
- Mongodb持久化--journal探究