最近一直在搞项目,好久没有更新博客了。恰巧一直在用 MongoDB,今天有空来汇总一下 MongoDB 中的常用命令。
什么是 MongoDB
MongoDB 是由 C++语言编写的,是一个基于分布式文件存储的开源数据库系统。
MongoDB 旨在为 WEB 应用提供可扩展的高性能数据存储解决方案。
MongoDB 将数据存储为一个文档,数据结构由键值(key=>value)对组成。
MongoDB 文档类似于 JSON 对象。字段值可以包含其他文档,数组及文档数组。
MongoDB 中的三要素:数据库 集合 文档
MongoDB 的优势与劣势
优势: 1、在适量级的内存的 MongoDB 的性能是非常迅速的,它将热数据存储在物理内存中,使得热数据的读写变得十分快。 2、MongoDB 的高可用和集群架构拥有十分高的扩展性。 3、在副本集中,当主库遇到问题,无法继续提供服务的时候,副本集将选举一个新的主库继续提供服务。 4、MongoDB 的 Bson 和 JSon 格式的数据十分适合文档格式的存储与查询。
劣势: 1、 不支持事务操作。MongoDB 本身没有自带事务机制,若需要在 MongoDB 中实现事务机制,需通过一个额外的表,从逻辑上自行实现事务。 2、 应用经验少,由于 NoSQL 兴起时间短,应用经验相比关系型数据库较少。 3、MongoDB 占用空间过大。
MongoDB 的常用命令
1、启动数据库
- mongod –dbpath d:/data/db mongo
- mongod –config /usr/local/etc/mongod.conf mongo
2、数据库操作
- 查看当前的数据库:db
- 查看所有的数据库:show dbs
- 创建/切换数据库:use db_name
- 删除当前的数据库:db.dropDatabase()
- 显示当前数据库状态:db.stats()
- 当前数据库版本:db.version()
- 查看当前数据库的链接机器地址:db.getMongo()
3、集合操作
- 创建一个集合:db.createCollection(‘movies’)
- 查看集合:show collections
- 删除集合:db.集合名称.drop()
4、文档操作
- 查看集合所有文档:db.collection.find()
- 插入文档:db.collection.insert({name:”xxx”,age:25})
- 删除文档:db.users.remove({username:”xxx”})
- 修改文档:db.users.update({username: ‘yangli’}, {username: ‘yl’}
官方文档:https://docs.mongodb.com/manual/reference/method/