我们知道 mysql 在安装的时候需要我们设置一个数据库默认的用户名和密码, mongodb 也不例外,不过 mongodb 是默认的没有设置访问限制的,不需要输入用户名和密码都可以访问的,但是这样会十分的不安全,我们需要手动的为 mongodb 加上权限限制命令。
首先建立一个默认的账户
Use admin
Db.addUser('sa','sa')
这样我们建立了一个用户名为 sa ,密码为 sa 的默认账户。
在此时我们还是可以不输入用户名和密码进入数据库的,接下来我们做如下的修改。
打开 mongodb 所在的注册表:
Win+R 运行 regedit ,找到[HKEY_LOCAL_MACHINE-->SYSTEM-->CurrentControlSet-->Services-->MongoDB]在右边的健-值列表中打到“ImagePath”,添加上 -auth ,如下图所示:
注:修改完注册表之后,一定要手动重启 mongodb 服务,这样才会生效。
这样当我们再次的打开 mongodb 的 shell 窗口,查看默认的数据库和“表”,会提示无法打开对应的 collections ,并且会报错,如下图所示。
当我们使用之前添加的用户登录就会显示出来, 1 默认的是用户名和密码正确。
在进入之后,我们可以再建立自己的用户。就像 mysql 中的用户管理中,在 mysql 的 user 表中我们可以添加和删除用户,在 mongodb 中也是一样的。例如我们添加一个 admin :
Db.addUser('admin','admin')
注:以上是在 windows 环境下操作的,在 linux 中是一致的。