MongoDB如何添加用户?使其有效?
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"]}) //添加管理员
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):
认证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引擎:
mmapv1存储引擎(下图是我在网上找的):(http://www.cnblogs.com/zengguowang/p/5573947.html)
当我们的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天一删就是这样了
上一篇: 779. 第K个语法符号