mongodb【实用教程】

MongoDB 是一个开源的文档型数据库管理系统

下载安装

GUI工具

命令行进入 MongoDB

Windows 系统

  1. 添加 MongoDB 到环境变量:
  • 找到 MongoDB 的安装路径,通常是C:\Program Files\MongoDB\Server\<version>\bin
  • 右键点击 "此电脑" 或 "我的电脑",选择 "属性"。
  • 点击左侧的 "高级系统设置",再点击 "环境变量"。
  • 在 "系统变量" 中,找到变量名为Path的变量,选择后点击 "编辑"。
  • 点击 "新建",然后添加 MongoDB 的bin目录路径。
  • 确认并保存所有设置。
  1. 启动 MongoDB 服务:
    打开 Windows CMD 窗口,输入mongod命令启动 MongoDB 服务。
  2. 进入 MongoDB 命令行:
    在另一个 CMD 窗口中,输入mongo命令,即可进入 MongoDB 的命令行界面。

命令行常用命令

操作数据库

  • show dbs或show databases:查看所有数据库。
  • use <database_name>:切换到指定的数据库,如果数据库不存在,则在插入数据时自动创建。例如use mydb将切换到名为mydb的数据库。
  • db.dropDatabase():删除当前使用的数据库。

操作集合(表)

  • show collections:查看当前数据库中的所有集合。
  • db.createCollection("<collection_name>"):创建一个新的集合。例如db.createCollection("users")将创建一个名为users的集合。
  • db.<collection_name>.drop():删除指定的集合。例如db.users.drop()将删除名为users的集合。

操作文档

  • db.<collection_name>.insertOne():向指定集合中插入一个文档。例如db.users.insertOne({name: "John", age: 30})将向users集合中插入一个包含name和age字段的文档。
  • db.<collection_name>.insertMany([, ,...]):向指定集合中插入多个文档。例如db.users.insertMany([{name: "Alice", age: 25}, {name: "Bob", age: 35}])将向users集合中插入两个文档。
  • db.<collection_name>.find():查询指定集合中的文档。例如db.users.find({age: {$gt: 30}})将查询users集合中年龄大于 30 的文档。
  • db.<collection_name>.updateOne(, ):更新指定集合中的一个文档。例如db.users.updateOne({name: "John"}, {$set: {age: 31}})将把users集合中名字为John的文档的年龄更新为 31。
  • db.<collection_name>.updateMany(, ):更新指定集合中的多个文档。例如db.users.updateMany({age: {KaTeX parse error: Expected 'EOF', got '}' at position 7: lt: 30}̲}, {inc: {age: 1}})将把users集合中年龄小于 30 的文档的年龄都增加 1。
  • db.<collection_name>.deleteOne():删除指定集合中的一个文档。例如db.users.deleteOne({name: "John"})将删除users集合中名字为John的文档。
  • db.<collection_name>.deleteMany():删除指定集合中的多个文档。例如db.users.deleteMany({age: {$gt: 40}})将删除users集合中年龄大于 40 的文档。

操作索引

  • db.<collection_name>.createIndex({: }):为指定集合的指定字段创建索引。例如db.users.createIndex({name: 1})将为users集合的name字段创建升序索引。
  • db.<collection_name>.dropIndex("<index_name>"):删除指定集合的指定索引。例如db.users.dropIndex("name_1")将删除users集合中名为name_1的索引。
  • db.<collection_name>.getIndexes():查看指定集合的所有索引。

操作聚合

  • db.<collection_name>.aggregate([, ,...]):对指定集合进行聚合操作。例如db.sales.aggregate([{KaTeX parse error: Expected '}', got 'EOF' at end of input: group: {_id: "category", totalSales: { s u m : " sum: " sum:"amount"}}}])将按category字段对sales集合中的数据进行分组,并计算每个分组的销售总额。
相关推荐
坐吃山猪21 分钟前
ChromaDB02-代码实战
数据库·向量数据库·chromadb
摇滚侠23 分钟前
MySQL 中 utf8mb4 字符集,字母a占几个字节,一个汉字占几个字节 / MySQL 中 utf8mb3 字符集,字母a占几个字节,一个汉字占几个字节
数据库·mysql
ChineHe29 分钟前
Redis数据类型篇001_数据类型梳理与选择指南
数据库·redis·缓存
Antoine-zxt32 分钟前
MySQL CPU飙升至500%的深度排查与优化实践
数据库·mysql
Awkwardx36 分钟前
MySQL数据库—MySQL基本查询
数据库·mysql
夜流冰36 分钟前
Excel - MS Support for Excel: 2 Collaborate
数据库·windows·excel
轻微的风格艾丝凡44 分钟前
嵌入式定时器计时技巧:用有符号数省略溢出判断的底层逻辑与实践
数据库·算法·dsp开发·嵌入式软件
Lonely丶墨轩1 小时前
从登录入口窥见架构:一个企业级双Token认证系统的深度拆解
java·数据库·sql
收获不止数据库2 小时前
黄仁勋2026CES演讲复盘:旧世界,裂开了!
大数据·数据库·人工智能·职场和发展
汽车仪器仪表相关领域2 小时前
工况模拟精准检测,合规减排赋能行业 ——NHASM-1 型稳态工况法汽车排气检测系统项目实战经验分享
数据库·算法·单元测试·汽车·压力测试·可用性测试