MongoDB设置登录账号、密码及权限的详细过程

 更新时间:2023年09月10日 09:31:12   作者:青春神马  
这篇文章主要给大家介绍了关于MongoDB设置登录账号、密码及权限的详细过程,文中通过代码以及图文介绍的非常详细,对大家学习或者使用MongoDB具有一定的参考借鉴价值,需要的朋友可以参考下
(福利推荐:【腾讯云】服务器最新限时优惠活动,云服务器1核2G仅99元/年、2核4G仅768元/3年,立即抢购>>>:9i0i.cn/qcloud

(福利推荐:你还在原价购买阿里云服务器?现在阿里云0.8折限时抢购活动来啦!4核8G企业云服务器仅2998元/3年,立即抢购>>>:9i0i.cn/aliyun

小提示

首先进入mongodb的config.conf配置文件,将authorization设置为enabled(表示启用 MongoDB认证功能)并重新启动mongodb。如果不会安装mongodb可以使用宝塔进行安装一般安装完mongodb后,会有默认的admin,config,local这三个默认的库。

1. 使用mongo命令进行连接mongoDB

mongo

执行命令后将会是下面这种情况,即表示登录成功!

2. 创建最高管理员账号

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

use admin 表示进到admin库,db.createUser({user:“admin”,pwd:“123456”,roles:[{role:“root”,db:“admin”}]})表示创建一个用户名是admin,密码是123456,角色权限为超级用户角色,db则针对的库

出现以下则表示创建成功 这时候可以用可视化工具连接试试看了,如果本地测试先将mongodb的config.conf配置文件的bindIp: 127.0.0.1改成0.0.0.0并重新启动mongodb

使用命令show users可查看该admin库下的所有用户

3. 为数据库设置独立的登录账号

使用以下命令创建一个名为 test 的数据库,并创建一个普通用户:

use test
db.createUser({user:"你自定义的用户名",pwd:"你自定义的密码",roles:[{role:"readWrite",db:"test"}]})
use test 表示进到test库
db.createUser({user:“test”,pwd:“123456”,roles:[{role:“readWrite”,db:“test”}]})表示创建一个用户名是"test,密码是123456,角色权限为可读写,db则针对的库

完成创建如想进入admin库,操作步骤为:

  • 输入mongo命令
  • 输入use admin命令进入admin库(switched to db admin表示进入成功)
  • 输入db.auth(“admin”,“123456”)进行认证登录,admin是你刚刚在这个admin库下创建的用户,1表示成功,0表示登录失败

如果设置了用户跟密码不先认证就操作命令,则会报以下错误提示你认证

常用命令

use dbname  // 如果数据库不存在,则创建并切换到该数据库,存在则切换到该数据库 
show users  // 查看当前库下的用户  
show dbs  //查询所有数据库 
db //当前所在库 
db.dropUser('admin')  // 删除用户 
db.updateUser('admin', {pwd: '654321'})  //修改用户密码  
db.auth('admin','654321')  // 密码认证 
db.dropDatabase() //先切换到指定数据库,然后执行以下命令删除数据库
quit() //退出登录

MongoDB 数据库用户权限

(1)数据库用户角色:read(只读)、readWrite(可读写);
(2)数据库管理角色:dbAdmin(在当前db中执行管理操作的权限)、dbOwner(在当前db中执行任意操作)、userAdmin(在当前db中管理user的权限);
(3)集群管理角色:clusterAdmin(管理机器的最高权限)、clusterManager(管理和监控集群的权限)、clusterMonitor(监控集群的权限)、hostManager( 管理Server);
(4)备份恢复角色:backup、restore;
(5)所有数据库角色:readAnyDatabase(在所有数据库上都有读取数据的权限)、readWriteAnyDatabase(在所有数据库上都有读写数据的权限)、userAdminAnyDatabase(在所有数据库上都有管理user的权限)、dbAdminAnyDatabase(管理所有数据库的权限);
(6)超级用户角色:root(超级用户)

总结 

到此这篇关于MongoDB设置登录账号、密码及权限的文章就介绍到这了,更多相关MongoDB设置登录账号密码及权限内容请搜索程序员之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持程序员之家!

相关文章

  • 记一次Mongodb中admin数据库导致的事故

    记一次Mongodb中admin数据库导致的事故

    这篇文章主要给大家介绍了关于一次Mongodb中admin数据库导致的事故的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。
    2018-03-03
  • MongoDB安全配置详解

    MongoDB安全配置详解

    这篇文章主要介绍了MongoDB安全配置详解,本文来自国内安全厂商乌云平台,讲解的还是比较全面的,需要的朋友可以参考下
    2015-05-05
  • Mongo服务重启异常问题的处理方法

    Mongo服务重启异常问题的处理方法

    这篇文章主要给大家介绍了关于Mongo服务重启异常问题的处理方法,这个问题其实还是挺常见的,通过此文学习处理方法,以后遇到了就不会措手不及的,需要的朋友可以参考下
    2021-07-07
  • MongoDB的安装方法图文教程

    MongoDB的安装方法图文教程

    MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源数据库系统。本文给大家介绍了mongodb的安装教程,非常不错,具有参考借鉴价值,感兴趣的朋友一起看看吧
    2016-11-11
  • MongoDB 游标详解及实例代码

    MongoDB 游标详解及实例代码

    这篇文章主要介绍了 MongoDB 游标详解及实例代码的相关资料,需要的朋友可以参考下
    2017-04-04
  • 分布式文档存储数据库之MongoDB访问控制的操作方法

    分布式文档存储数据库之MongoDB访问控制的操作方法

    这篇文章主要介绍了分布式文档存储数据库之MongoDB访问控制的操作方法,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-11-11
  • MongoDB系列教程(五):mongo语法和mysql语法对比学习

    MongoDB系列教程(五):mongo语法和mysql语法对比学习

    这篇文章主要介绍了MongoDB系列教程(五):mongo语法和mysql语法对比学习,本文对熟悉Mysql数据库的同学来说帮助很大,用对比的方式可以快速学习到MongoDB的命令,需要的朋友可以参考下
    2015-05-05
  • 通过3分钟快速掌握MongoDB中regex的几种用法

    通过3分钟快速掌握MongoDB中regex的几种用法

    $regex为模糊查询的字符串提供正则表达式功能,MongoDB使用Perl兼容正则表达式(即“文件”)8.41版与UTF-8支持。下面这篇文章主要给大家介绍了关于如何通过3分钟快速掌握MongoDB中regex的几种用法,需要的朋友可以参考下。
    2018-03-03
  • MongoDB模糊查询操作案例详解(类关系型数据库的 like 和 not like)

    MongoDB模糊查询操作案例详解(类关系型数据库的 like 和 not like)

    这篇文章主要介绍了MongoDB的模糊查询操作(类关系型数据库的 like 和 not like) ,本文通过代码案例分析给大家介绍的非常详细,具有一定的参考借鉴价值,,需要的朋友可以参考下
    2019-07-07
  • Mongodb 用户权限管理及配置详解

    Mongodb 用户权限管理及配置详解

    这篇文章主要介绍了Mongodb 用户权限管理及配置详解,包括Mongodb访问控制配置,Mongodb开启权限验证,Mongodb账户创建,Mongodb账户管理命令需要的朋友可以参考下
    2023-01-01

最新评论

?


http://www.vxiaotou.com