MongoDB
一、MongoDB环境搭建
1.下载MongoDB
https://www.mongodb.org/downloads
2.安装MongoDB服务
管理员执行cmd,进入MongoDB安装目录bin/下,执行以下命令:mongod --dbpath "D:\MongoDB\data\db" --logpath "D:\MongoDB\data\log\MongoDB.log" --install --serviceName "MongoDB"
如果报错的话,则需手动创建相应目录,相应的URL分别为数据文件和日志文件,如果服务安装错误,删掉之前的服务重装mongod.exe --remove --serviceName "MongoDB"
3.下载数据库客户端Robomongo
http://www.robomongo.org/
4.安装程序后连接
配置参数默认即可,如果显示授权失败,是MongoDB版本的问题,解决办法
-
将版本改为3
use admin var schema = db.system.version.findOne({"_id" : "authSchema"}) schema.currentVersion = 3 db.system.version.save(schema)
-
删掉之前的用户并重建
use test db.dropUser('sa') db.createUser({user:'sa',pwd:'123',roles:[{role:'dbOwner',db:'test'}]})
二、MongoDB相关操作
1.基本操作
show dbs
查看多少数据库use imooc
切换数据库,如果没有不会报错,在需要时会自己创建db.dropDatabase()
删除数据库db.imooc_collection.insert()
向集合中插入文档,为JSONdb.imooc_collection.insert({x:1})
show collections
== show tables
查看所有集合 db.stats()
查看数据库相应信息
2.新增
for(i = 3;i < 100;i++)db.imooc_collection.insert({x:i})
插入可以使用js语法,多条插入
3.查询
db.imooc_collection.find()
查询相应集合中的所有文档db.imooc_collection.find({x:1})
查询条件为JSONdb.imooc_collection.find().count()
对查询结果计数db.imooc_collection.find().skip(3).limit(2).sort({x:1})
可以使用skip,limit,sort
控制查询结果,1是ASC -1是DESC
4.更新
db.imooc_collection.update({x:1},{x:999})
这样会覆盖其他变量,相当于重置db.imooc_collection.insert({x:100,y:100,z:100})
如果只更改z而不更改x,y,用上钟方式会覆盖掉,所以应该使用$set操作符db.imooc_collection.update({z:100},{$set:{y:99}})
更新一条不存在的数据时自动创建db.imooc_collection.update({y:999},{y:111},true)
以上操作只会更新默认找到的第一条数据,为了防止不小心的update误操作,如果要全量更新db.imooc_collection.update({c:1},{$set:{c:2},false,true})
5.删除
默认删除所有查到的数据,但是必须传递参数db.imooc_collection.remove({c:2})
db.imooc_collecton.drop
删除一个集合
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。