Mongo入门
2019-12-10 本文已影响0人
无心Y
windows安装
- 下载包https://fastdl.mongodb.org/win32/mongodb-win32-x86_64-2008plus-ssl-4.0.3.zip
- 设置环境变量 {mongo_install_path}\bin
- 创建数据文件mkdir data/db; mkdir data/log
- 创建配置文件vim mongod.cfg
- 安装mongo服务 mongod.exe --config "{mongo_install_path}\mongod.cfg" --install
- 启动mongo服务 net start MongoDB
- 停止mongo服务 net stop MongoDB
systemLog:
destination: file
path: {mongo_install_path}\data\log\mongod.log
storage:
dbPath: {mongo_install_path}\data\db
连接
mongodb://[username:password@]host1[:port1][,host2:port2][/database]
数据库
- 创建数据库
>>>use database_name
- 删除数据库
>>>show dbs # 查看所有的数据库
>>>use db_name # 切换到要删除的数据库
>>>db.dropDatabase() # 删除数据库
集合
- 创建集合
>>>db.createCollection(name, options)
- 删除集合
>>>show collections # 查看所有的集合
>>>db.col.drop()
插入文档
>>>db.col.insert(document)
>>>document=({"title": "MongoDB", "tag": ["mongodb", "MySQL"], "like": 100})
查询文档
>>>db.col.find(query, options)
>>>db.col.find().pretty()
>>>db.col.find({"title": "MongoDB"}) # title="MongoDB"
>>>db.col.find({"like": {$gt:50}}) # like>50
>>>db.col.find({"like": {$lt:50}}) # like<50
>>>db.col.find({"like": {$ne:50}}) # like!=50
>>>db.col.find({"like": {$gte:50}}) # like>=50
>>>db.col.find({"like": {$lte:50}}) # like<=50
>>>db.col.find({"title": "MongoDB", "like": 100}) # AND
>>>db.col.find({$or: [{"title": "MongoDB"}, {"like": 100}]}) # OR
>>>db.col.count() # count(*)
>>>db.col.find({"title": {$regex: "^Mongo"}}) # 模糊查询
>>>$in, $nin, $exists # in; not in; exists
>>>db.col.find().sort({"like": 1}) # order by like asc
更新文档
>>>db.col.update(query, {$set:ducument}, options)
>>>db.col.update({"title": "MongoDB"}, {$set:{"titile": "Mongo"}})
>>>options: {"upsert": false, "multi": false} # upsert=true 若未找到就插入,默认false; multi=true 更新找到的所有记录,默认false
>>>db.col.save(document) # 更新整个document
删除文档
>>>db.col.remove(query, options)
>>>db.col.remove({"title": "MongoDB"})
>>>options: {"justOne": false} # justOne=true 只删除查到的第一个文档
>>>db.col.remove() # 删除所有的文档
MongoDB中值的数据类型
数据类型 | 描述 |
---|---|
String | 字符串 |
Integer | 整数类型 |
Boolean | 布尔型 |
Double | 浮点型 |
Array | 列表 |
Timestamp | 时间戳 |
Object | 用于内嵌文档 |
Null | 空值 |
Date | 日期时间 |
Re | 存储正则表达式 |