mongodb安装配置和Shell指令
安装
1 | vi /etc/yum.repos.d/mongodb-org-3.2.repo |
1 | [mongodb-org-3.2] |
1 | yum -y install mongodb-org |
1 | [root@vultr ~]# rpm -qa |grep mongodb |
###内存限制:
vim /etc/mongod.conf
增加
1 | wiredTiger: |
增加管理账户
1.增加管理账户
Mongodb推荐创建一个只能管理用户的用户来做角色权限分配工作:userAdminAnyDatabase
该账号只有用户管理权限,并未其分配数据库相关读、写权限。
1 | mongo |
2.退出mongod 服务
1 | systemctl stop mongod.service |
3.启动授权模式
vim /etc/mongod.conf
增加
1 | security: |
4.重新启动mongod服务
systemctl start mongod.service
5.启动授权模式验证
这时候 mongo 进去,执行相关的指令,都会产生以下提示:
1 | [root@vultr ~]# mongo |
6.如何授权使用
1 | mongo |
或者
mongo -u admin -p –authenticationDatabase admin
1 | [root@vultr ~]# mongo -u admin -p --authenticationDatabase admin |
但是admin账号只有用户管理权限,并未其分配数据库相关读、写权限
为数据库创建用户
1 | use DATABASE_NAME #如果数据库不存在,则创建数据库,否则切换到指定数据库。 |
创建test用户,该用户具有对 zsxq 读写权限,对pythondb 库有读权限
1 | use zsxq |
内建的角色
数据库用户角色:read、readWrite;
数据库管理角色:dbAdmin、dbOwner、userAdmin;
集群管理角色:clusterAdmin、clusterManager、clusterMonitor、hostManager;
备份恢复角色:backup、restore;
所有数据库角色:readAnyDatabase、readWriteAnyDatabase、userAdminAnyDatabase、dbAdminAnyDatabase
超级用户角色:root // 这里还有几个角色间接或直接提供了系统超级用户的访问(dbOwner 、userAdmin、userAdminAnyDatabase)
内部角色:__system
角色说明:
Read:允许用户读取指定数据库
readWrite:允许用户读写指定数据库
dbAdmin:允许用户在指定数据库中执行管理函数,如索引创建、删除,查看统计或访问system.profile
userAdmin:允许用户向system.users集合写入,可以找指定数据库里创建、删除和管理用户
clusterAdmin:只在admin数据库中可用,赋予用户所有分片和复制集相关函数的管理权限。
readAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读权限
readWriteAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读写权限
userAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的userAdmin权限
dbAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的dbAdmin权限。
root:只在admin数据库中可用。超级账号,超级权限
作者:山鬼谣me
来源:CSDN
原文:https://blog.csdn.net/u013066244/article/details/53874216
版权声明:本文为博主原创文章,转载请附上博文链接!
###启动
1 | /etc/init.d/mongod start |
查看进程 端口
1 | netstat -nltp|grep mongo |
mongo shell:
mongo
db.version()
常用shell
1 | show dbs |
高级查询
1 | https://blog.csdn.net/yczz/article/details/5974235 |