欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

MongoDB如何添加用户?使其有效?

程序员文章站 2024-03-19 20:13:40
...

1)MongoDB数据库在默认是没有用户名及密码,不用安全验证的,只要连接上服务就可以进行CRUD操作


2)开启安全性验证

a)Cmd命令打开mongoDB服务端:

     mongod

    远程连接服务器端mongo:mongo -u username -p pwd 192.168.41.215:27017/database(用户名对应的数据库)

b)设置mongodb的用户名和密码(管理员):

use admin

    db.createUser({user:"root",pwd:"123456",roles:["root"]}) //添加管理员


c)重新启动服务之后就可生效
mongod  --auth --dbpath D:\MongoDBdata


d)未授权的管理员执行命令,显然安全验证检查开启成功了,此时你应该这样连接:

      登录客户端:

mongo admin -u root -p 123456

或者

db.auth("username","passsword")




3)添加普通用户

CMD进入D:\Program Files \mongodb\bin,使用mongo.exe进入mongodb的命令行管理。

针对某个数据库(database)建立用户(权限:read,readWrite,write)

ps:创建用户(如果不选中对应的数据库use foobar,那么你创建的用户认证会不成功,也无法登陆mongo):

MongoDB如何添加用户?使其有效?

认证db.auth("user","pwd")--也必须选中对应的数据库use foobar,因为我上面选中了,所以直接就认证,出现1表示认证成功

db.auth("username","password")

最后,重启mongo,使用刚才创建的用户登陆,验证权限


4)Linux下MongoDB环境配置

http://hae.iteye.com/blog/2183478


5)如何辨别自己的mongodb开启的哪个引擎呢?

mongodb在3.2之前默认使用的是mmapv1存储引擎,3.2之后默认开启的是wiredTiger存储引擎,如何辨别自己的mongodb开启的哪个引擎呢?如下图(查看mongodb启动的数据存放目录)

wiredTiger引擎:

MongoDB如何添加用户?使其有效?

mmapv1存储引擎(下图是我在网上找的):(http://www.cnblogs.com/zengguowang/p/5573947.html)

MongoDB如何添加用户?使其有效?


当我们的mongodb开启的是wiredTiger存储引擎时,使用VUE连接mongodb它的数据是不显示的,也就是说你连接成功后,查看库里的collections,显示为空,为什么呢?

  因为两个存储引擎生成的文件格式不兼容,mmapv1存储引擎生成的数据文件wiredTiger存储引擎读取不出来,怎么解决呢?说实话本人暂时没找到解决的办法,惭愧的很!!!!!!

  至于网上的解决办法就是在mongodb启动的时候,直接指定mongodb的存储引擎,命令如下:

  mongod --storageEngine wiredTiger  --dbpath 数据目录

  mongod --storageEngine mmapv1 --dbpath 数据目录

  但是本人和同事实验了很多次都不行,集合(collection)还是显示不出来,所以暂时我们使用的可视化工具都是robomongo

  下面我教大家使用VUE的时候如何可以免注册,可以一直使用,其实很简单,但是有点麻烦,这个方法是我在网上看一位老师的教程,他教的,我在这里借鉴一下:

  大家在官网下载好了MongoVUE之后,一般使用了14天之后就会提示要你注册了,不然用不了,此时你可以进入电脑的注册表中,打开cmd,输入regedit进入注册表

  然后直接ctrl+f搜索"4FF78130",找到里面的文件,14天一删,14天一删就是这样了