0.前言

服务上用宝塔装了个mongoDB。打开一看又没有账号密码,一时不知道怎么处理,折腾了一会终于明白了怎么去设置密码了。

1.命令行式安装

我们可以远程登录到服务上,然后用命令行的方式。

首先使用mongo命令进入mongoDB。

mongo
use admin

user: 用户名
pwd: 用户密码
roles: 用来设置用户的权限,比如读,读写 等等

使用下面的指令设置用户名和密码,pwd就是你设置的密码。

db.createUser({user: 'root', pwd: 'admin111111', roles: ['root']})

然后通过下面指令看是否成功。

db.auth('root', 'admin111111') 

结果返回是1表示成功。

2.给某个库单独设置

如果我要给某个库设置密码,比如test

use test
db.createUser({ user: 'test', pwd: '111111', roles: [{ role: 'readWrite', db: 'test' }] })

这行代码意思是 创建一个test用户 给予读写权限 db表示该用户操作的数据库名。

Read:允许用户读取指定数据库
readWrite:允许用户读写指定数据库
dbAdmin:允许用户在指定数据库中执行管理函数,如索引创建、删除,查看统计或访问system.profile
userAdmin:允许用户向system.users集合写入,可以找指定数据库里创建、删除和管理用户
clusterAdmin:只在admin数据库中可用,赋予用户所有分片和复制集相关函数的管理权限。
readAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读权限
readWriteAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读写权限
userAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的userAdmin权限
dbAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的dbAdmin权限。
root:只在admin数据库中可用。超级账号,超级权限

然后我们配置开机启动

mongod --dbpath /www/server/mongodb/data --auth
分类: 开发与创造