手把手教你设置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)

大家都在看

  • Linux磁盘管理

    对Linux来说一切皆文件,Linux归根结底只有一个根目录,一个独立且唯一的文件结构,Linux的每个分区都是用来组成整个文件系统的一部分。所以Linux采用了磁盘挂载的方式,将…

    Linux 2023年6月8日
    073
  • 记录一次shell脚本环境全局变量在函数内部生效问题

    背景 计划核对内网IP的使用情况,所以写了个小脚本扫描有哪些IP还在使用。执行脚本过程中发现函数中一直获取不到变量的值,排查后将结论记录下来。 问题现象 已经配置了全局变量,但是在…

    Linux 2023年6月14日
    067
  • 019 Linux tcpdump 抓包案例入门可真简单啊?

    1 tcpdump 是什么? 2 tcpdump 常用命令参数 3 tcpdump 抓包wss,配合Wireshark分析 4 tcpdump 抓包白度,配合Wireshark分析…

    Linux 2023年5月27日
    062
  • 博客停更通知

    楼主要忙工作了,这些工具使用相关的博客我还会维护;如有不正确的地方,欢迎大家批评指正!翻了翻这几年的内容,都是一些简单记录,且作为休闲娱乐吧。 2022年04月16日 于杭州; O…

    Linux 2023年6月14日
    050
  • Linux重启网卡提示Bringing up interface eth0

    注入产生的原理: 数据库设置为GBK编码: 宽字节注入源于程序员设置MySQL连接时错误配置为:set character_set_client=gbk,这样配置会引发编码转换从而…

    Linux 2022年8月20日
    0191
  • git命令之git clone用法

    注入产生的原理: 数据库设置为GBK编码: 宽字节注入源于程序员设置MySQL连接时错误配置为:set character_set_client=gbk,这样配置会引发编码转换从而…

    Linux 2022年8月30日
    0274
  • 一位美国教授的科研诀窍:每周工作100小时(转)

    今天看到了,Xinyu Zhang 的一篇文章,深受启发,转载一下。 OSU计算机系一位教授到北大讲座,学生提问:您组里发了那么多牛paper,有什么诀窍? 教授回答:我们组里,从…

    Linux 2023年6月14日
    070
  • csrf跨站请求伪造;auth模块

    csrf跨站请求伪造 针对csrf相关的校验有很多种方式,django只是提供了一些而已 form表单 前提必须是前后端整合,能够使用模板语法 {% csrf_token %} 当…

    Linux 2023年6月7日
    058
  • 手把手教你在Linux系统下安装MySQL

    在CentOS中默认安装有MariaDB,这个是MySQL的分支,但为了需要,还是要在系统中安装MySQL,而且安装完成之后可以直接覆盖掉MariaDB。 1. 下载并安装MySQ…

    Linux 2023年6月14日
    060
  • java执行shell脚本怎么进行交互处理

    感谢我吧,什么都不说,直接上代码: package utils; import java.io.*; public class ShellUtils { public static…

    Linux 2023年5月28日
    060
  • 记一次小团队Git实践(中)

    注入产生的原理: 数据库设置为GBK编码: 宽字节注入源于程序员设置MySQL连接时错误配置为:set character_set_client=gbk,这样配置会引发编码转换从而…

    Linux 2022年8月30日
    0279
  • Linux pssh安装与使用

    说明:我这是没有在密钥认证的情况下操作 1、安装pssh [root@libin ansible]# yum install -y pssh [root@libin ansible…

    Linux 2023年6月13日
    059
  • 上班摸鱼与网络安全

    上班不摸鱼,那这班上的没有灵魂啊。但是不久前爆出的国美网络监控事件,也提示我们网络有风险,摸鱼需谨慎。 https://baijiahao.baidu.com/s?id=17167…

    Linux 2023年6月13日
    072
  • Ubuntu16.04安装openldap和phpldapadmin

    注入产生的原理: 数据库设置为GBK编码: 宽字节注入源于程序员设置MySQL连接时错误配置为:set character_set_client=gbk,这样配置会引发编码转换从而…

    Linux 2022年8月26日
    0233
  • 阿里云函数-爱奇艺签到

    简介 是否支持多账号:是消息推送平台:PUSHPLUS 代码 -*- coding: utf8 -*- import requests,random,string,hashlib,…

    Linux 2023年6月7日
    059
  • docker Redis 安裝路徑

    注入产生的原理: 数据库设置为GBK编码: 宽字节注入源于程序员设置MySQL连接时错误配置为:set character_set_client=gbk,这样配置会引发编码转换从而…

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