MongoDB

45 阅读1分钟

一、安装

参考文档:

juejin.cn/post/718658…

www.runoob.com/mongodb/mon…

www.mongodb.com/try/downloa…

二、路径设置

1、文件路径

MongoDB:

/Users/yourName/soft/mongodb/bin

MongoShell:

/Users/yourName/soft/mongosh/bin

数据目录:

/Users/**/soft/mongodb/data

log目录:

/Users/**/soft/mongodb/log

2、软链接

log ln -s /Users/**/soft/mongosh/bin/mongod /usr/local/bin/mongod

log ln -s /Users/**/soft/mongosh/bin/mongosh /usr/local/bin/mongosh

三、使用

1、启动服务

启动:mongod -f /Users/**/soft/mongodb/mongo.conf

查看是否启动:ps aux | grep -v grep | grep mongod

2、进入shell

mongosh

3、shell断开连接

db.shutdownServer()

四、SQL

查看所有库:show dbs
切换并创建:use DemoTest
当前库:db
展示库collection:show collections

eg:
创建:
use natours-test
db.tours.insertOne({name: "The Forest Hiker", price: 297, rating: 4.7})
db.tours.find()
show collections
db.tours.insertMany([{name: "The Sea Explorer", price: 497, rating: 4.8}, {name:"The Snow Adventurer", price: 997, rating: 4.9, difficulty: "easy"}])
db.tours.find()

查询:
db.tours.find() 展示所有
db.tours.find({difficulty: "easy"}) 等于
db.tours.find({price:{$lte:500}}) 小于等于
db.tours.find({price:{$lte:500}, rating:{$gte:4.8}}) and
db.tours.find({ $or:[ {price:{$lte:500}}, {rating:{$gte:4.8}} ]}) or
db.tours.find({ $or:[ {price:{$gt:500}}, {rating:{$gte:4.8}} ]}, {name: 1})  projection显示某些字段

更新/添加字段:
db.tours.updateOne({ name: "The Snow Adventurer"}, {$set:{price: 501} })  更新找到的第一个
db.tours.updateMany({ price: {$gt:400}, rating: {$gte: 4.8} }, {$set:{premium: true}}) 更新所有

删除:
db.user.deleteOne({ userId: {$gt: 100}})
db.user.deleteMany({ userId: {$gt: 100}})
db.user.deleteMany({}) 删除所有