Mongodb学习笔记
1:安装
从https://www.mongodb.com/download-center?jmp=nav#community下载最新版本到本地,安装时修改安装路径C:\MongoDB。
安装好之后就会有C:\MongoDB\bin目录,里面有很多exe程序。
2:做成配置文件
在C:\MongoDB下创建文件mongo.config
内容如下:
dbpath=C:\MongoDB\data\db
logpath=C:\MongoDB\data\log\mongodb.log
3:命令行加载配置文件并做成系统服务
C:\MongoDB\bin>mongod.exe --config C:\MongoDB\mongo.config --install --serviceName "MongoDB"
4:通过命令行启动或者停用系统服务
C:\MongoDB\bin>net start mongodb
C:\MongoDB\bin>net stop mongodb
总结:mongoDB安装其实仅仅是文件拷贝,可以完全通过手动拷贝来完成,只要创造好服务器的启动环境即可:需要的是bin文件夹(存放的是mongoDB的一些命令)、指定数据库的位置和日志位置并建立一个日志文件。有了这些,mongoDB服务器端就可以启动了。
5:通过命令行操作mongodb
命令行cd到mongodb的bin目录,运行mongo,就能打开mongodb的shell。
show dbs查看所有的db
use ** 切换到某一个db
show collections 查看当前db里面的所有集合
db.**.drop() 删除当前db的**集合(创建集合不需要刻意实施,在插入集合里的第一条数据的时候就会默认创建这个集合)
6:集合的CRUD
db.**.insert({"key1":"value1","key2':"value2"}) 向当前db的**集合里插入数据
db.**.update({"key":"value"},{"key1":"value1","key2':"value2"},{upsert:true/false,multi:true/false}) 更新当前db的**集合里的key=value的数据,如果没有,根据upsert的标识决定是否新加,如果有,根据multi参数决定是更新一个还是多个。
db.**.save({"key1":"value1","key2':"value2"}) 如果文档中没有_id或者文档里有_id但是在集合里不存在,则新规,如果_id字段在集合里存在,则更新。
db.**.find() 查看当前db的**集合中的所有数据
db.**.find({"key":"value"}) 查看当前db的**集合中的key=value的所有数据
db.**.find({"key":{$in:["value1","value2"]}}) 查看当前db的**集合中的key=value1或者value2的所有数据
db.**.find({"key1":"value1","key2":{$in:["value2","value3"]}}) 查看当前db的**集合中的key1=value1 And key2=value2或者value3的所有数据
db.**.find({$or :[{"key1":"value1"},{"key2":"value2"},]}) 查看当前db的**集合中的key1=value1 或者key2=value2的所有数据
db.**.remove()删除当前db里面当前集合中的所有数据
db.**.remove({"key":"value"},true/false):删除当前db里面当前集合中符合条件的所有数据或者第一条数据