手把手教你设置MongoDB密码

mongodb密码和传统数据如mysql等有些区别: mongodb的用户名和密码是基于特定数据库的,而不是基于整个系统的。所有所有数据库db都需要设置密码。

1. 查看所有数据库(在mongodb新版本里并没有admin数据库,但是并不妨碍第2步操作。)

show dbs

手把手教你设置MongoDB密码

2. 进入admin数据库

use admin

手把手教你设置MongoDB密码

3. 创建管理员账户

db.createUser({ user: "admin", pwd: "password", roles: [{ role: "userAdminAnyDatabase", db: "admin" }] })

手把手教你设置MongoDB密码

mongodb中的用户是基于身份role的,该管理员账户的 role是 userAdminAnyDatabase。admin用户用于管理账号,不能进行关闭数据库等操作。

4. 创建root

db.createUser({user: "root",pwd: "password", roles: [ { role: "root", db: "admin" } ]})

手把手教你设置MongoDB密码

创建完admin管理员,创建一个超级管理员root。角色:root。root角色用于关闭数据库。

db.shutdownServer()

5. 创建用户自己的数据库的管理角色

use yourdatabase

db.createUser({user: "user",pwd: "password",roles: [ { role: "dbOwner", db: "yourdatabase" } ]})

手把手教你设置MongoDB密码

role: “dbOwner”代表数据库所有者角色,拥有最高该数据库最高权限。比如新建索引等当账号管理员和超级管理员,可以为自己的数据库创建用户了。(坑)这时候一定,一定要切换到所在数据库上去创建用户,不然创建的用户还是属于admin。

如果是读写角色的话,权限设置为 role: "readWrite"

6. 查看用户

show users

7. 删除用户

删除用户必须由账号管理员来删,所以,切换到admin角色

use admin

db.auth("admin","password")

删除单个用户

db.system.users.remove({user:"XXXXXX"})

删除所有用户

db.system.users.remove({})

可以使用:mongodb://youruser:yourpassword2@localhost/yourdatabase 来连接到你的mongo

Original: https://www.cnblogs.com/zilongmao/p/11428864.html
Author: 无尽函数
Title: 手把手教你设置MongoDB密码

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/610746/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • 我的第一个博客

    我就是想试一试 .阿西吧 段狗是傻逼,段狗请看右边的看板娘 posted @2020-06-22 18:56 xiao-c 阅读(17 ) 评论() 编辑 Original: ht…

    Linux 2023年6月7日
    0127
  • 2021年3月-第01阶段-Linux基础-Linux系统概念-Linux命令

    Linux系统基本概念 图形界面: Ctrl+Shift +号 //调整命令终端变大 Ctrl – 号 //调整命令终端变小 命令终端: ~ 家目录:用户的私有场所,其…

    Linux 2023年6月8日
    091
  • 2021年3月-第01阶段-Linux基础-Linux系统的启动流程

    Linux系统的启动流程 理解Linux操作系统启动流程,能有助于后期在企业中更好的维护Linux服务器,能快速定位系统问题,进而解决问题。 上图为Linux操作系统启动流程 1….

    Linux 2023年6月8日
    0107
  • VSCODE 配置远程调试环境

    以下内容为本人的著作,如需要转载,请声明原文链接微信公众号「englyf」 https://mp.weixin.qq.com/s/f1KZOlL92ojes-r2l9rlCw 我的…

    Linux 2023年6月6日
    0136
  • Python 之Memcache中间件

    Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载,它通过在内存中缓存数据和减少读取数据库的次数,从而提高动态数据库驱动网站的速度。Mem…

    Linux 2023年6月14日
    090
  • Abp vNext中集成Redis

    在Abp vNext中默认集成了缓存,可以使用.net Core自带的缓存,也可以使用Redis,但官网的Redis集成中少掉了一个依赖项的介绍。 首先,正常使用Abp vNext…

    Linux 2023年5月28日
    078
  • python获取Windows硬件特征信息

    1.python pip安装WMI 并用pyinstaller编译出device_chk.exe 参考内容:https://blog.csdn.net/fengmm521/arti…

    Linux 2023年6月7日
    080
  • MySQL数据库用户授权

    相关库:mysql 相关表:user 查看权限表: 5.7之前的版本 select user,host,password from mysql.user; 5.7之后的版本 sel…

    Linux 2023年6月14日
    074
  • 一步一图带你深入剖析 JDK NIO ByteBuffer 在不同字节序下的设计与实现

    让我们来到微观世界重新认识 Netty 在前面 Netty 源码解析系列 《聊聊 Netty 那些事儿》中,笔者带领大家从宏观世界详细剖析了 Netty 的整个运转流程。从一个网络…

    Linux 2023年6月6日
    098
  • 常见Git命令汇总

    前言 最近,有朋友私信让我就 git 使用做篇文章分享,分享一下我在日常工作中是如何使用 git的。我当场就收费两包辣条,最后讨价还价,…

    Linux 2023年6月13日
    081
  • opencv

    404. 抱歉,您访问的资源不存在。 可能是网址有误,或者对应的内容被删除,或者处于私有状态。 代码改变世界,联系邮箱 contact@cnblogs.com 园子的商业化努力-困…

    Linux 2023年6月14日
    095
  • Redis持久化原理 — RDB与AOF详细解释

    一、持久化的作用 持久化(Persistence),即把数据(如内存中的对象)保存到可永久保存的存储设备中(如磁盘)。持久化Redis所有数据保持在内存中,对数据的更新将异步地保存…

    Linux 2023年5月28日
    062
  • 为知笔记迁移到印象笔记-从入门到放弃

    最新进展 已经放弃了,目前正在逐步把笔记迁移到本地,用icloud来同步。 为什么放弃迁移? 没有找到好的迁移方案,迁移过去文档不方便查找和使用 为什么放弃印象笔记? 1.主要使用…

    Linux 2023年6月14日
    080
  • 防火墙NAT+DHCP+ACL+ACAP

    任务要求: SwitchA作为有线终端网关与DHCP Server,为无线终端与有线终端分配IP地址,并配置ACL访问控制列表控制不同用户的访问权限,客户机只能跟DMZ区域服务器互…

    Linux 2023年6月7日
    069
  • CentOS-7配置fastDFS文件服务器和安装Nginx

    配置步骤实在是很繁琐,听我慢慢道来! 主要是配置管理(tracker)和存储(storage)返回地址样式 –> 域名/组名/磁盘名/目录名/文件名 &#8211…

    Linux 2023年6月13日
    083
  • Netty源码解读(二)-服务端源码讲解

    简单Echo案例 代码是netty的源码,我添加了自己理解的中文注释。 了解了Netty的线程模型和组件之后,我们先看看如何写一个简单的Echo案例,后续的源码讲解都基于此案例。以…

    Linux 2023年6月7日
    0103
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球