之前有搭建mongodb3.0的副本集,不过当时直接使用的admin数据库,用户也是直接给的root。
最近想要把数据移到非admin数据库上,便重新以非admin库创建用户,过程大致和之前的一样,但创建用户的时候还是遇到了一些问题,主要是在用户角色和权限上。
我搭建过程中参考了下边的用户权限相关的博客:
root角色和权限不能使用我倒是在尝试之前就预料到了,但根据上边的文档,我以为clusterAdmin是可以的,结果也不行。
![mongodb3.0副本集搭建补充~~非admin数据库的用户权限 mongodb3.0副本集搭建补充~~非admin数据库的用户权限](https://image.shishitao.com:8440/aHR0cHM6Ly9iYnNtYXguaWthZmFuLmNvbS9zdGF0aWMvTDNCeWIzaDVMMmgwZEhBdmFXMW5MbUpzYjJjdVkzTmtiaTV1WlhRdk1qQXhOakEzTVRFeE56QXlNREExTVRVL2QyRjBaWEp0WVhKckx6SXZkR1Y0ZEM5aFNGSXdZMFJ2ZGt3eVNuTmlNbU4xV1ROT2EySnBOWFZhV0ZGMkwyWnZiblF2TldFMlREVk1NbFF2Wm05dWRITnBlbVV2TkRBd0wyWnBiR3d2U1RCS1FsRnJSa05OUVQwOUwyUnBjM052YkhabEx6Y3dMMmR5WVhacGRIa3ZRMlZ1ZEdWeS5qcGc%3D.jpg?w=700&webp=1)
最终,创建了一个readWrite的用户,成功连接并使用,也可以用java-spring成功进行操作。
用户创建如下图:
![mongodb3.0副本集搭建补充~~非admin数据库的用户权限 mongodb3.0副本集搭建补充~~非admin数据库的用户权限](https://image.shishitao.com:8440/aHR0cHM6Ly9iYnNtYXguaWthZmFuLmNvbS9zdGF0aWMvTDNCeWIzaDVMMmgwZEhBdmFXMW5MbUpzYjJjdVkzTmtiaTV1WlhRdk1qQXhOakEzTVRFeE56QXlNelEzT1RRL2QyRjBaWEp0WVhKckx6SXZkR1Y0ZEM5aFNGSXdZMFJ2ZGt3eVNuTmlNbU4xV1ROT2EySnBOWFZhV0ZGMkwyWnZiblF2TldFMlREVk1NbFF2Wm05dWRITnBlbVV2TkRBd0wyWnBiR3d2U1RCS1FsRnJSa05OUVQwOUwyUnBjM052YkhabEx6Y3dMMmR5WVhacGRIa3ZRMlZ1ZEdWeS5qcGc%3D.jpg?w=700&webp=1)
java代码写了个简单的测试类连接查询(可参考开头第一个链接中的代码),成功连接的运行结果如图:
![mongodb3.0副本集搭建补充~~非admin数据库的用户权限 mongodb3.0副本集搭建补充~~非admin数据库的用户权限](https://image.shishitao.com:8440/aHR0cHM6Ly9iYnNtYXguaWthZmFuLmNvbS9zdGF0aWMvTDNCeWIzaDVMMmgwZEhBdmFXMW5MbUpzYjJjdVkzTmtiaTV1WlhRdk1qQXhOakEzTVRFeE56QXlORGczTXpVL2QyRjBaWEp0WVhKckx6SXZkR1Y0ZEM5aFNGSXdZMFJ2ZGt3eVNuTmlNbU4xV1ROT2EySnBOWFZhV0ZGMkwyWnZiblF2TldFMlREVk1NbFF2Wm05dWRITnBlbVV2TkRBd0wyWnBiR3d2U1RCS1FsRnJSa05OUVQwOUwyUnBjM052YkhabEx6Y3dMMmR5WVhacGRIa3ZRMlZ1ZEdWeS5qcGc%3D.jpg?w=700&webp=1)
![mongodb3.0副本集搭建补充~~非admin数据库的用户权限 mongodb3.0副本集搭建补充~~非admin数据库的用户权限](https://image.shishitao.com:8440/.jpg?w=700&webp=1)