前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >MongoDB用户授权和管理

MongoDB用户授权和管理

作者头像
拓荒者
发布2019-03-16 15:17:59
1.2K0
发布2019-03-16 15:17:59
举报
文章被收录于专栏:运维经验分享运维经验分享

个人分类: MongoDB

1、mongodb安装好后第一次进入是不需要密码的,也没有任何用户,通过shell命令可直接进入,cd到mongodb目录下的bin文件夹,执行命令./mongo即可  运行如下:

代码语言:javascript
复制
[root@namenode mongodb]# ./bin/mongo
MongoDB shell version: 1.8.2
connecting to: test
> use test;
switched to db test

2、添加管理用户(mongoDB 没有无敌用户root,只有能管理用户的用户 userAdminAnyDatabase),

代码语言:javascript
复制
>use admin
>db.createUser( {user: "admin",pwd: "123456",roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]})

注:添加完用户后可以使用show users或db.system.users.find()查看已有用户

3、添加完管理用户后,关闭MongoDB,并使用权限方式再次开启MongoDB,这里注意不要使用kill直接去杀掉mongodb进程,(如果这样做了,请去data/db目录下删除mongo.lock文件),可以使用db.shutdownServer()关闭

4、使用权限方式启动MongoDB

代码语言:javascript
复制
./mongod --dbpath=/usr/local/mongodb/data --logpath=/usr/local/mongodb/log/mongod.log --fork --auth

或者在配置文件中修改:

代码语言:javascript
复制
 auth = true
#noauth = true

5、进入mongo shell,使用admin数据库并进行验证,如果不验证,是做不了任何操作的。

代码语言:javascript
复制
> use admin
> db.auth("admin","123456")   #认证,返回1表示成功

6、验证之后还是做不了操作,因为admin只有用户管理权限,下面创建用户,用户都跟着库走,

代码语言:javascript
复制
> use mydb
> db.createUser({user: "root",pwd: "123456",roles: [{ role: "readWrite", db: "mydb" }]})

7、使用创建的用户root登录进行数据库操作:

代码语言:javascript
复制
[root@localhost mongodb]# mongo 127.0.0.1/mydb -uroot -p
MongoDB shell version: 3.2.9
Enter password:
connecting to: 127.0.0.1/mydb
> db
mydb
> use mydb
switched to db mydb
> show collections

或者使用:  ./mongo -u username -p password --port port --authenticationDatabase databaseName ./mongo databaseName -u username -p password --port port

然后就可以进行增删改查各种数据操作…

8、查看已存在的用户

代码语言:javascript
复制
> db.system.users.find()

9、删除用户

代码语言:javascript
复制
> use mydb
> db.system.users.remove({user:"root"})
> db.system.users.find()
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018/12/05 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云数据库 MongoDB
腾讯云数据库 MongoDB(TencentDB for MongoDB)是腾讯云基于全球广受欢迎的 MongoDB 打造的高性能 NoSQL 数据库,100%完全兼容 MongoDB 协议,支持跨文档事务,提供稳定丰富的监控管理,弹性可扩展、自动容灾,适用于文档型数据库场景,您无需自建灾备体系及控制管理系统。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档