当前位置: 首页 > news >正文

【MongoDB】下载安装、指令操作

目录

1.下载安装

2.指令

2.1.基础操作指令

2.2.增加

2.3.查询

2.4.修改

2.5.删除


前言:

关于MongoDB的核心概念请移步:

【文档数据库】ES和MongoDB的对比-CSDN博客

1.下载安装

本文以安装Windows版本的mongodb为例,Linux版本的其实也差不多。

下载地址:

Try MongoDB Atlas Products | MongoDB

环境变量:

MongoDB_HOME=E:\MongoDB

path: %MongoDB_HOME%\bin

数据存储位置:

MongoDB默认的数据存放位置为C盘下面的data文件夹下的db,所以要在C盘下面创建一个名叫data的文件夹,再在该文件夹下面创建一个db文件夹。

修改数据存储位置:

mongod --dbpath 路径

注意:如果将MongoDB设置成自启动服务以后,需要在mongo.cfg文件中修改路径配置才会生效。

端口:

默认为27017

修改端口号

mongod –dbpath 路径 –port 端口号

将MongoDB设置为系统服务,可以在后台启动,不需要每次都手动启动。

官方文档地址:

https://docs.mongodb.com/v3.4/tutorial/install-mongodb-on-windows/

按官方文档配置好以后执行以下命令:

sc.exe create MongoDB binPath= "\"E:\MongoDB\bin\mongod.exe\" --service --config=\"E:\MongoDB\mongod.cfg\"" DisplayName= "MongoDB" start= "auto"

然后在服务中启动服务:

2.指令

2.1.基础操作指令

显示当前服务器中所有数据库:

show dbs(或者databases)

进入数据库:

use 数据库名

查看当前所在数据库:

db

查看当前数据库有几个集合:

show collections

2.2.增加

插入一个db. testcollection.insertOne({name:"zou"});

插入多个db.testcollection.insert([{name:"chen"},{name:"zhou"}])

3.2版本以后新增了insertOne用来插入一个,insertMany用来插入多个。

注意:如果新插入数据时没有声明_id属性,MongoDB会根据时间戳和机器码为每个文档自动创建一个_id。_id为文档的唯一标识。

2.3.查询

查询所有:

db.test.find();

{ "_id" : ObjectId("5d33173bfdc793a0d1ba2072"), "name" : "zou" }

条件查询:

db.testcollection.find({name:"zou"})

可以加索引来指定,返回数组中的第几个文档

db.testcollection.find({name:"zou"})[0]

查询集合中符合条件的第一个文档:

db.testcolection.findOne({条件});

查询单个属性:

db.testcollection.findOne({name:"zou"}).name

db.testcollection.find({name:"zou"})[0].name

返回数量:

db.testcollection.find({name:"zou"}).count();

db.testcollection.find({name:"zou"}).length();

2.4.修改

MongoDB的update不仅可以用来修改已存在的属性还可以用来追加新属性。

update默认修改匹配到的第一个,updateMany用来修改所有匹配。

第一个参数为条件,第二个参数为要改的属性。

db.testcollection.update({name:"zou"},{age:23})

update默认是用新对象替换原来的对象,而不是只是修改单个属性。

如果要修改单个属性值,需要使用系统操作符,常用的是$set,要修改哪个属性就在那个属性前面用$set修饰。

db.testcollection.update({name:"zhou"},{$set: {age:23}})

用$unset来删除属性:

db.testcollection.update({name:"zhou"},{$unset: {age:23}})

2.5.删除

删除文档:

db.testcollection.remove(条件);

db.testcollection.deleteOne(条件);

db.testcollection.deleteMany(条件);

删除集合:

db.集合名称.drop()

删除数据库:

如果文档为空,集合会自动删除,同理,如果集合为空,数据库也会自动删除。

db.dropDatabase()

​​​​

http://www.lryc.cn/news/284851.html

相关文章:

  • k8s-pvc/pv扩容记录
  • 关于Unity插件TriLib使用的一点儿心得
  • 计算机二级Python基本排序题-序号45(补充)
  • 响应式Web开发项目教程(HTML5+CSS3+Bootstrap)第2版 例4-6 fieldset
  • html渲染优先级
  • linux 更新镜像源
  • 【征服Redis12】redis的主从复制问题
  • php函数 一
  • 监督学习 - 梯度提升回归(Gradient Boosting Regression)
  • 【工具】使用ssh进行socket5代理
  • (delphi11最新学习资料) Object Pascal 学习笔记---第2章第六节(类型转换)
  • 计算机服务器中了mallox勒索病毒怎么办,mallox勒索病毒解密数据恢复
  • CPU相关专业名词介绍
  • VRRP协议负载分担
  • maven 基本知识/1.17
  • 【Java】HttpServlet类简单方法和请求显示
  • 使用Rancher管理Kubernetes集群
  • QT中操作word文档
  • 纯前端在线Office文档安全预览之打开Word文档后禁止打印、禁止另存为、禁止复制
  • 李沐深度学习-d2lzh_pytorch模块实现
  • 什么是OSPF?为什么需要OSPF?OSPF基础概念
  • Java多线程并发篇----第二十六篇
  • list下
  • 【Linux】进程间通信——system V 共享内存、消息队列、信号量
  • 网络卡问题排查手段
  • 20240119-子数组最小值之和
  • c# 释放所有嵌入资源, 到某个本地文件夹
  • Unity SnapScrollRect 滚动 匹配 列表 整页
  • 网络命令ping和telnet
  • ros2学习笔记-CLI工具,记录命令对应操作。