首页 > 数据库 >MongoDB下载安装入门

MongoDB下载安装入门

时间:2023-10-09 14:46:53浏览次数:37  
标签:入门 角色 账号 admin MongoDB 数据库 用户 下载安装

MongoDB下载安装入门

一. MongoDB下载安装

mongodb官网下载不了, MongoDB下载、安装、配置、使用,如何下载MongoDB数据库,MongoDB入门-CSDN博客

按照文章一→六:安装,下载,环境变量配置等等

MongoDB v4.2版 安装目录:C:\Program Files\MongoDB\Server\4.2\bin

二. 安全认证

  • 注意!!!一定要给 MongoDB 初始化管理员账号,并开启 MongoDB 的安全认证

    不同于 MySQL 的账号密码管理,MongoDB 的账号密码是基于特定数据库的,而不是整个 MongoDB 系统。也就是说,创建的每个账号密码,只能访问操作一个数据库。

1. 创建管理员账号:

# 连接mongodb
> mongo

# 切换到 admin 库
> use admin;

# 创建管理员账号
> db.createUser({ user: "useradmin", pwd: "adminpassword", roles: [{ role: "userAdminAnyDatabase", db: "admin" }] })
  • user :账号。
  • pwd :密码。
  • role :角色。
  • db :所属数据库。

在 MongoDB 中,用户是基于角色(role)授权。内置角色如下:

FROM 《MongoDB 开启权限验证及设置用户名密码》

内建的角色

  • 数据库用户角色 :read、readWrite
  • 数据库管理角色 :dbAdmin、dbOwner、userAdmin
  • 集群管理角色 :clusterAdmin、clusterManager、clusterMonitor、hostManager
  • 备份恢复角色 :backup、restore
  • 所有数据库角色 :readAnyDatabase、readWriteAnyDatabase、userAdminAnyDatabase、dbAdminAnyDatabase
  • 超级用户角色 :root // 这里还有几个角色间接或直接提供了系统超级用户的访问(dbOwner、userAdmin、userAdminAnyDatabase)

角色说明:

  • read :允许用户读取指定数据库
  • readWrite :允许用户读写指定数据库
  • dbAdmin :允许用户在指定数据库中执行管理函数,如索引创建、删除,查看统计或访问 system.profile
  • userAdmin :允许用户向 system.users 集合写入,可以找指定数据库里创建、删除和管理用户
  • clusterAdmin :只在admin数据库中可用,赋予用户所有分片和复制集相关函数的管理权限
  • readAnyDatabase :只在admin数据库中可用,赋予用户所有数据库的读权限
  • readWriteAnyDatabase :只在admin数据库中可用,赋予用户所有数据库的读写权限
  • userAdminAnyDatabase :只在admin数据库中可用,赋予用户所有数据库的 userAdmin 权限
  • dbAdminAnyDatabase :只在admin数据库中可用,赋予用户所有数据库的 dbAdmin 权限
  • root :只在 admin 数据库中可用。超级账号,超级权限

2. 开启安全认证

编辑 mongodb.conf 配置文件,开启安全认证配置项。存储在mongodb安装目录bin目录中的mongod.cfg文件

C:\Program Files\MongoDB\Server\4.2\bin\mongod.cfg

开启完成后需要重新启动MongoDB服务:

打开服务步骤:

此电脑(计算机) 右键 -> 管理 -> 服务和应用程序 -> 服务 -> MongoDB Server (MongoDB) -> 右键 点击 重新启动(E)或 点击左侧的(重启动此服务)

或者 Win + R 运行 services.msc 也能打开如下 服务界面,找到 MongoDB Server (MongoDB) -> 右键 点击 重新启动(E)或 点击左侧的(重启动此服务)
image

3. 认证

  • 对于每个数据库的管理员账号,我们赋予 "dbOwner" 角色,允许读写、索引等操作。
  • 对于每个数据库的开发者账号,我们赋予 "readWrite" 角色,只允许读写操作。

image

三. 参考

文章只是自己初接触时的记录,主要是对两篇文章的结合和尝试

标签:入门,角色,账号,admin,MongoDB,数据库,用户,下载安装
From: https://www.cnblogs.com/lang77/p/17751691.html

相关文章

  • 7、Python语法入门之流程控制
    7、Python语法入门之流程控制转载: 7、Python语法入门之流程控制-知乎(zhihu.com)目录:引子分支结构什么是分支结构为什么要用分支结构如何使用分支结构if语法if应用案例循环结构什么是循环结构为什么要用循环结构如何使用循环结构while循环语......
  • axios 入门、基本用法
    axiosPromisebasedHTTPclientforthebrowserandnode.jsFeaturesMakeXMLHttpRequestsfromthebrowserMakehttprequestsfromnode.jsSupportsthePromiseAPIInterceptrequestandresponseTransformrequestandresponsedataCancelrequestsAutomatictransfo......
  • PyQT5 PyQT入门教程(之三)
    REFhttp://code.py40.com/pyqt5/22.html 事件Event所有的GUI程序都是事件驱动的。事件主要由用户触发,但也可能有其他触发方式:例如网络连接、windowmanager或定时器。当我们调用QApplication的exec_()方法时会使程序进入主循环。主循环会获取并分发事件。在事件模型中,有三个参与......
  • PyQT5 PyQT入门教程(之二)
    REFhttps://www.jianshu.com/p/3832eb48f3d5 布局(Layout)管理QtDesigner中,在工具箱中最上方可以看到有4种布局。分别是垂直布局、水平布局、栅格布局和表单布局。  四种布局布局名称   布局含义垂直(Vertical)布局   布局内的控件按照从上到下的顺序纵向排列水平(Horizon......
  • PyQT5 PyQT入门教程(之一)
    REFhttps://www.jianshu.com/p/5b063c5745d0 本篇博客对应的视频讲解:https://www.bilibili.com/video/BV1NZ4y1Z7ue/ QtDesigner的介绍在PyQt中编写UI界面可以直接通过代码来实现,也可以通过QtDesigner来完成。QtDesigner的设计符合MVC的架构,其实现了视图和逻辑的分离,从而实现......
  • mongodb慢查询对内存和CPU的影响
    所得结果均为ChatGPT所得,只是用来记录好复习对内存的影响数据加载到内存:MongoDB使用内存来缓存最频繁访问的数据,以提高查询性能。这个缓存通常称为"工作集"。当一个查询需要访问某些数据时,MongoDB会尝试从内存中获取数据,这比从磁盘读取数据要快得多。慢查询导致数据逐出:当......
  • C++基础入门
    C++基础入门1C++初识1.1第一个C++程序编写一个C++程序总共分为4个步骤创建项目创建文件编写代码运行程序1.1.1创建项目​ VisualStudio是我们用来编写C++程序的主要工具,我们先将它打开1.1.2创建文件右键源文件,选择添加->新建项给C++文件起个名称,然后点击添......
  • 【最佳实践】MongoDB导出导入数据
    首先说一下这个3节点MongoDB集群各个维度的数据规模:1、dataSize:1.9T2、storageSize:600G3、全量备份-加压缩开关:186G,耗时8h4、全量备份-不加压缩开关:1.8T,耗时4h27m具体导出的语法比较简单,此处不再赘述,本文重点描述导入的优化过程,最后给出导入的最佳实践。■2023-09-13......
  • docker入门加实战——docker安装并配置阿里云加速
    docker入门加实战——docker安装并配置阿里云加速为什么要学习docker在开发和部署项目的过程中,经常会遇到如下问题:软件安装包名字复杂,不知道去哪里找安装软件和部署项目步骤复杂,容易出错这就是我们今天要学习Docker技术要解决的问题。有了Docker以后,项目的部署会如丝般顺滑......
  • 文本分类入门
    文本分类是自然语言处理(NLP)领域中的一项任务,它涉及将文本文档分配到一个或多个预定义的类别或标签中。其主要目标是使用计算机算法来自动识别和归纳文本的内容,以便更好地组织、检索和理解大量的文本数据。文本分类在许多应用中都有广泛的用途,包括:情感分析:将文本分为积极、消极......