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

【图文教程】windows 下 MongoDB 介绍下载安装配置

文章目录

    • 介绍
      • MySQL 之间的区别和适用场景差异
        • 数据模型:
        • 查询语言:
        • 可扩展性:
        • 数据一致性:
    • 下载
    • 安装
    • 环境变量
    • 配置

介绍

MongoDB 是一种开源的、面向文档的 NoSQL 数据库管理系统。它使用灵活的文档模型来存储数据,这意味着数据以类似于 JSONBSON(二进制 JSON)格式表示,并且可以具有不同的结构。MongoDB 适用于许多场景,包括 Web 应用程序、实时分析、日志记录和缓存等。

MySQL 之间的区别和适用场景差异

数据模型:

MongoDB:MongoDB 是面向文档的数据库,使用灵活的文档模型来存储数据。每个文档是一个键值对的集合,可以包含不同结构和类型的数据。
MySQL:MySQL是关系型数据库,使用表格和行的结构来组织数据,需要定义和遵循预定义的表结构。

适用场景:
MongoDB:适用于需要存储和处理非结构化或半结构化数据,或者需要频繁地进行数据模式更改的场景,如日志数据、社交媒体数据、实时分析等。
MySQL:适用于具有严格结构化数据需求、需要事务支持和复杂的关系查询的场景,如电子商务平台、金融系统、订单管理系统等。

查询语言:

MongoDB:MongoDB使用强大而灵活的查询语言,支持丰富的查询表达式、聚合管道和地理空间查询等。
MySQL:MySQL使用结构化查询语言(SQL)作为主要的查询语言,适用于关系型数据模型和数据操作。

适用场景:
MongoDB:适用于需要灵活查询和数据分析的场景,可以轻松地处理复杂的查询和聚合操作。
MySQL:适用于需要执行复杂关系查询、连接多个表格以及利用SQL的强大功能的场景。

可扩展性:

MongoDB:MongoDB具有良好的可扩展性,可以水平扩展到多个服务器上,支持分片技术。
MySQL:MySQL也支持一定程度的可扩展性,但通常是通过垂直扩展(增加服务器的处理能力)来实现。

适用场景:
MongoDB:适用于需要处理大量数据和高并发访问的场景,可以通过分片技术实现水平扩展。
MySQL:适用于中小规模的应用,需要处理相对较少的数据和并发请求。

数据一致性:

MongoDB:MongoDB是一致性模型为最终一致性的数据库,在分布式环境下保证数据最终
MySQL:MySQL通常采用强一致性模型,确保数据在所有节点上的读写操作是一致的。

适用场景:
MongoDB:适用于对一致性要求相对较低的场景,可以容忍一定程度的数据同步延迟。
MySQL:适用于对数据一致性要求较高的场景,如金融和事务处理系统。

总体而言,对于非结构化或半结构化数据、需要灵活性和可扩展性的场景,MongoDB是一个不错的选择。对于严格的结构化数据和复杂的关系查询需求,以及对一致性要求较高的场景,MySQL可能更适合。

下载

首先进入官网下载安装包。
在这里插入图片描述

安装

下载完毕后直接双击开始安装
在这里插入图片描述
下一步
在这里插入图片描述
完整安装
在这里插入图片描述
选择 mongoDB 数据安装位置,数据位置直接默认好了,避免后面会出错(因为后面没有更改安装位置的修改…)
在这里插入图片描述
是否下载官方工具
在这里插入图片描述
最后的确认
在这里插入图片描述
完成安装后可以打开服务管理,可以看到 MongoDB 已经运行起来了(快捷方式 win+r services.msc
在这里插入图片描述
安装目录地址
在这里插入图片描述
如果没有出现问题,那么可以在浏览器中打开 http://127.0.0.1:27017/ 出现如下页面证明mongoDb启动成功。
在这里插入图片描述
下载完毕后,在命令台进入安装目录下并输入一下命令将会得到一个错误:
在这里插入图片描述
这是因为还需要加载 mongo shell 才可以在控制台进行操作数据库,所以进入 mongo shell 下载地址
在这里插入图片描述
下载完成以后将压缩包解压进入 bin 目录,复制所有文件
在这里插入图片描述
粘贴到 mongoDB 的根目录下的 bin 目录下
在这里插入图片描述
这个时候输入 mongosh.exe 就可以进入 mongoDB 数据库里面了
在这里插入图片描述
退出输入 exit 即可。

环境变量

到这里,如果觉得每次进入控制台都需要输入安装地址才可以进入数据库太麻烦了,可以配置一个环境变量(win+r sysdm.cpl)。
在这里插入图片描述
这时候再打开命令台直接输入 mongosh 即可快速进入数据库了!
在这里插入图片描述

配置

用过 MySQL 同学都知道,每次使用它的时候都需要在命令台中输入 mysql -u root -p 这个命令登录,那么 MongoDB 有吗?答案是肯定有的,将目光移到上面一幅图,细心的同学可以发现有一条警告:

Access control is not enabled for the database. Read and write access to data and configuration is unrestricted

那么这是什么意思呢?我们将其翻译过来就是 未为数据库启用访问控制。对数据和配置的读写访问不受限制,说人话就是没有对数据库配置密码!接下来就对数据库设置访问密码,如果有同学不想设置,也是没有问题的,这不会影响你本地开发使用的。

# 进入 mongosh
mongosh# 使用账号管理数据库
use admindb.createUser(
{# 登录用户名user: "root",pwd: passwordPrompt(),roles: [[role: "userAdminAnyDatabase", db: "admin"], "readWriteAnyDatabase"]
}
)
# 输入密码

在这里插入图片描述
完成后将会出现

db.adminCommand( { shutdown: 1 } )

关闭 cmd,编辑 mongod.cfg
在这里插入图片描述
取消 security 的注释并启动
在这里插入图片描述
最后重启 MongoDB 服务 net stop/start MongoDB
打开 cmd 输入以下命令进入数据库

mongosh --port xxx  --authenticationDatabase "admin" -u "xxx" -p

当然,这个时候我们也可以使用最初的命令进入数据库且没有警告了,但是那一种方法启动的端口号是默认 27017,而使用这种方式可以指定 mongodb 服务器运行的端口号。

到此,我们的下载安装配置教程已经完成了!

相关文章:

【图文教程】windows 下 MongoDB 介绍下载安装配置

文章目录 介绍MySQL 之间的区别和适用场景差异数据模型:查询语言:可扩展性:数据一致性: 下载安装环境变量配置 介绍 MongoDB 是一种开源的、面向文档的 NoSQL 数据库管理系统。它使用灵活的文档模型来存储数据,这意味…...

算法复杂度-BigO表示法

1.时间复杂度--大O表示法 算法的渐进时间复杂度,T(n)O(f(n)) T(n)表示算法的渐进时间复杂度 f(n)表示代码执行的次数 O()表示正比例关系 2.常用的时间复杂度量级 3.举例 (1&am…...

测试理论知识五:功能测试、系统测试、验收测试、安装测试、测试的计划与控制

模块测试的目的是发现程序模块与其接口规格说明之间的不一致。 功能测试的目的是为了证明程序未能符合其外部规格说明。 系统测试的目的是为了证明软件产品与其初始目标不一致。 1. 功能测试 功能测试是一个试图发现程序与其外部规格说明之间存在不一致的过程。功能测试通…...

太阳能爆闪警示灯

适用场所: 适用于高压线,塔吊,路政,船舶,种植,塔机,航海航道等场所起警示作用。 产品特点: 光控无开关,白天不闪,昏暗环境自动闪烁,无需手动操作,省时省事; 采用红色LED作光源,亮度高&#…...

怎么为pdf文件添加水印?

怎么为pdf文件添加水印?PDF是一种很好用的文件格式,这种格式能够很有效的保护我们的文件,但有时可能还会被破解,这种时候在PDF上添加水印就是比较好的方法。 综上所述,PDF是保密性很强的文件,但添加水印能够…...

基于ssm医药信息管理系统论文

基于SSM的医药信息管理系统的设计与实现 摘要 当下,正处于信息化的时代,许多行业顺应时代的变化,结合使用计算机技术向数字化、信息化建设迈进。以前相关行业对于医药信息的管理和控制,采用人工登记的方式保存相关数据&#xff…...

Ceph存储体系架构?

Ceph体系架构主要由RADOS和RADOS GW和RBD以及CephFS构成。 RADOS(Reliable, Autonomic Distributed Object Store)是Ceph的底层核心,RADOS本身也是分布式存储系统,CEPH所有的存储功能都是基于RADOS实现。RADOS由两个组件组成&…...

详解现实世界资产(RWAs)

区块链中的现实世界资产(RWAs)是代表实际和传统金融资产的数字通证,如货币、大宗商品、股票和债券。 实际世界资产(RWA)的通证化是区块链行业中最大的市场机会之一,潜在市场规模可达数万万亿美元。理论上&…...

Windows漏洞利用开发——利用ROP绕过DEP保护

实验6 Windows漏洞利用开发 6.1实验名称 Windows漏洞利用开发 6.2实验目的 学习windows漏洞利用开发,使用kali linux相关工具对windows内目标程序进行漏洞利用 6.3实验步骤及内容 第三阶段:利用ROP绕过DEP保护 了解DEP保护理解构造ROP链从而绕过DEP…...

合并两个有序链表算法(leetcode第21题)

题目描述: 将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 示例 1:输入:l1 [1,2,4], l2 [1,3,4] 输出:[1,1,2,3,4,4] 示例 2:输入:l1 [], l2 [] 输…...

二维码初体验 com.google.zxing 实现续 - web api封装

文章目录 一、概述二、最终效果三、源码结构四、完整代码 一、概述 在 二维码初体验 com.google.zxing 实现 我们实现了二维码的生成,但是大部分情况下,二维码的相关功能是作为API接口来提供服务的。 我们下面便演示在springboot、Knife4j下封装api接口…...

Hadoop入门学习笔记——四、MapReduce的框架配置和YARN的部署

视频课程地址:https://www.bilibili.com/video/BV1WY4y197g7 课程资料链接:https://pan.baidu.com/s/15KpnWeKpvExpKmOC8xjmtQ?pwd5ay8 Hadoop入门学习笔记(汇总) 目录 四、MapReduce的框架配置和YARN的部署4.1. 配置MapReduce…...

list集合

List集合 List集合的概述 有序集合(也称之为序列),用户可以精确的控制列表中的每个元素的插入位置。用户可以通过整数索引访问元素,并搜索列表中的元素 与 Set 集合不同,列表通常允许重复的元素 List 集合的特点 有…...

Vue3学习(后端开发)

目录 一、安装Node.js 二、创建Vue3工程 三、用VSCode打开 四、源代码目录src 五、入门案例——手写src 六、测试案例 七、ref和reactive的区别 一、安装Node.js 下载20.10.0 LTS版本 https://nodejs.org/en 使用node命令检验安装是否成功 node 二、创建Vue3工程 在…...

爬虫字典生成工具,CeWL使用教程

爬虫字典生成工具,CeWL使用教程 1.工具概述2.参数解析3.使用实例1.工具概述 CeWL 是一个 ruby 应用程序,它将给定的 URL 爬到指定的深度,可以选择跟随外部链接,并返回一个单词列表,然后可用于密码破解者 Cewl 是黑客武器库中的强大工具,因为它允许创建有针对性的单词列…...

消息队列之关于如何实现延时队列

一、延时队列的应用 1.1 什么是延时队列? 顾名思义:首先它要具有队列的特性,再给它附加一个延迟消费队列消息的功能,也就是说可以指定队列中的消息在哪个时间点被消费。 延时队列在项目中的应用还是比较多的,尤其像…...

Linux Shell 002-基础知识

Linux Shell 002-基础知识 本节关键字:Linux、Bash Shell、基础知识、Bash特性 相关指令:bash、rm、cp、touch、date 基础知识 什么是Shell脚本 简单概括:将需要执行的命令保存到文本中,按照顺序执行。 准备描述:sh…...

前缀和+单调双队列+贪心:LeetCode2945:找到最大非递减数组的长度

本文涉及知识点 C算法:前缀和、前缀乘积、前缀异或的原理、源码及测试用例 包括课程视频 单调双队列 贪心 题目 给你一个下标从 0 开始的整数数组 nums 。 你可以执行任意次操作。每次操作中,你需要选择一个 子数组 ,并将这个子数组用它所…...

【微服务】springboot整合kafka-stream使用详解

目录 一、前言 二、kafka stream概述 2.1 什么是kafka stream 2.2 为什么需要kafka stream 2.2.1 对接成本低 2.2.2 节省资源 2.2.3 使用简单 2.3 kafka stream特点 2.4 kafka stream中的一些概念 2.5 Kafka Stream应用场景 三、环境准备 3.1 搭建zk 3.1.1 自定义d…...

什么是动态代理?

目录 一、为什么需要代理? 二、代理长什么样? 三、Java通过什么来保证代理的样子? 四、动态代理实现案例 五、动态代理在SpringBoot中的应用 导入依赖 数据库表设计 OperateLogEntity实体类 OperateLog枚举 RecordLog注解 上下文相…...

Leetcode 3576. Transform Array to All Equal Elements

Leetcode 3576. Transform Array to All Equal Elements 1. 解题思路2. 代码实现 题目链接:3576. Transform Array to All Equal Elements 1. 解题思路 这一题思路上就是分别考察一下是否能将其转化为全1或者全-1数组即可。 至于每一种情况是否可以达到&#xf…...

MySQL 隔离级别:脏读、幻读及不可重复读的原理与示例

一、MySQL 隔离级别 MySQL 提供了四种隔离级别,用于控制事务之间的并发访问以及数据的可见性,不同隔离级别对脏读、幻读、不可重复读这几种并发数据问题有着不同的处理方式,具体如下: 隔离级别脏读不可重复读幻读性能特点及锁机制读未提交(READ UNCOMMITTED)允许出现允许…...

3.3.1_1 检错编码(奇偶校验码)

从这节课开始,我们会探讨数据链路层的差错控制功能,差错控制功能的主要目标是要发现并且解决一个帧内部的位错误,我们需要使用特殊的编码技术去发现帧内部的位错误,当我们发现位错误之后,通常来说有两种解决方案。第一…...

可靠性+灵活性:电力载波技术在楼宇自控中的核心价值

可靠性灵活性:电力载波技术在楼宇自控中的核心价值 在智能楼宇的自动化控制中,电力载波技术(PLC)凭借其独特的优势,正成为构建高效、稳定、灵活系统的核心解决方案。它利用现有电力线路传输数据,无需额外布…...

Java-41 深入浅出 Spring - 声明式事务的支持 事务配置 XML模式 XML+注解模式

点一下关注吧!!!非常感谢!!持续更新!!! 🚀 AI篇持续更新中!(长期更新) 目前2025年06月05日更新到: AI炼丹日志-28 - Aud…...

【碎碎念】宝可梦 Mesh GO : 基于MESH网络的口袋妖怪 宝可梦GO游戏自组网系统

目录 游戏说明《宝可梦 Mesh GO》 —— 局域宝可梦探索Pokmon GO 类游戏核心理念应用场景Mesh 特性 宝可梦玩法融合设计游戏构想要素1. 地图探索(基于物理空间 广播范围)2. 野生宝可梦生成与广播3. 对战系统4. 道具与通信5. 延伸玩法 安全性设计 技术选…...

2023赣州旅游投资集团

单选题 1.“不登高山,不知天之高也;不临深溪,不知地之厚也。”这句话说明_____。 A、人的意识具有创造性 B、人的认识是独立于实践之外的 C、实践在认识过程中具有决定作用 D、人的一切知识都是从直接经验中获得的 参考答案: C 本题解…...

laravel8+vue3.0+element-plus搭建方法

创建 laravel8 项目 composer create-project --prefer-dist laravel/laravel laravel8 8.* 安装 laravel/ui composer require laravel/ui 修改 package.json 文件 "devDependencies": {"vue/compiler-sfc": "^3.0.7","axios": …...

如何在网页里填写 PDF 表格?

有时候,你可能希望用户能在你的网站上填写 PDF 表单。然而,这件事并不简单,因为 PDF 并不是一种原生的网页格式。虽然浏览器可以显示 PDF 文件,但原生并不支持编辑或填写它们。更糟的是,如果你想收集表单数据&#xff…...

Springboot社区养老保险系统小程序

一、前言 随着我国经济迅速发展,人们对手机的需求越来越大,各种手机软件也都在被广泛应用,但是对于手机进行数据信息管理,对于手机的各种软件也是备受用户的喜爱,社区养老保险系统小程序被用户普遍使用,为方…...