==========================Mongodb的使用场景
1、数据量大
2、写入操作频繁(读写频繁)
3、价值较低,对事务的要求性不高
什么时候选择MongoDB?
1、应用不需要事务及复杂的join支持
2、新应用,需求会变,数据模型无法确定,想快速迭代开发
3、应用需要2000-3000以上的读写QPS
4、应用需要TB甚至PB级别的数据存储
5、应用需要大量的地理位置查询,文本查询
符合以上1个及以上需求
==========docker 安装mongodb
docker pull mongo:4.2
docker run -d -p 27017:27017 -v /data/mongo2/config:/data/configdb -v /data/mongo2/db:/data/db --name mongo42 mongo:4.2
navicat for mongodb破解版地址:https://www.downkuai.com/soft/124788.html
Mongodb常用指令
1. `show dbs`:显示所有的数据库。
2. `use database_name`:切换到指定的数据库,如果该数据库不存在,则创建数据库。
3. `db.createCollection(name, options)`:在当前数据库中创建指定名称和选项(可选)的新集合。
4. `show collections`:在当前数据库中显示所有集合。
5. `db.collectionName.find()`:查询指定集合的所有文档。
6. `db.collectionName.findOne()`:查询指定集合的第一个文档。
7. `db.collectionName.insert()`:向指定集合中插入一个文档。
8. `db.collectionName.update()`:更新指定集合中符合条件的第一篇文档。
9. `db.collectionName.updateMany()`:更新指定集合中符合条件的所有文档。
10. `db.collectionName.remove()`:从指定集合中删除一个或多个文档。
11. `db.collectionName.drop()`:删除指定的集合。
12. `db.dropDatabase()`:删除当前数据库。
13. `db.collectionName.aggregate(pipeline)`:聚合指定集合中的数据。
14. `db.collectionName.count()`:查询指定集合中文档的数量。
15. `db.collectionName.ensureIndex()`:在指定集合中创建一个索引
mongodb 根据时间倒序排列,并只查询一条数据
db.Profile.find({"displayName":"005"}).sort({"_updated_at":-1}).limit(1);