Windows下MongoDB安装及创建用户名和密码
下载MongoDB的安装文件https://www.mongodb.com/download-center#community,选择合适的版本(注:本人选择的是3.2.6)
下载完MongoDB.msi后点击Next一路安装下去(注:本人的mongodb的安装路径为D:\MongoDB\Server\)
将MongoDB服务器作为Windows服务运行
请注意,你必须有管理权限才能运行下面的命令。执行以下命令将MongoDB服务器作为Windows服务运行:
mongod.exe --bind_ip 127.0.0.1 --logpath "D:\MongoDB\Server\mglogs\mongodb.log" --logappend --dbpath "D:\MongoDB\Server\db" --serviceName "mongodb" --serviceDisplayName "mongodb" --auth --install (注:加上--auth 这样以后就可以使用用户名和密码后才能进行MongoDB的相关操作)
上述命令运行成功后,开始—>运行—>输入services.msc 回车后就可以打开 windows 所有的服务项列表 ;在列表中就可以查看到mongodb的服务项,点击启动。
--------------------------------------------------------------------------------------------------------------------------
启动完MongoDB后,cmd命令下进入D:\MongoDB\Server\bin(即MongoDB的安装目录),执行mongo.exe;
上面提到过为了MongoDB的安全,我们必须通过用户名和密码登陆后才能操作MongoDB,现在增加一个管理员:
use admin 注:MongoDB安装好以后由默认的admin表和local表;其中admin存放的是用户信息
db.createUser({ user: "root",pwd: "root",customData:{name:"root"},roles:[{ role: "userAdminAnyDatabase",db: "admin" }]}) 注:创建一个用户名和密码为root的管理员
创建完后登陆
db.auth('root','root')
show collections
--------------------------------------------------------------------------------------------------------------------------
createUser 方法 db.createUser( { user: "accountAdmin01",
pwd: "changeMe",
customData: { employeeId: 12345 },
roles: [ { role: "clusterAdmin", db: "admin" },
{ role: "readAnyDatabase", db: "admin" },
"readWrite"] },
{ w: "majority" , wtimeout: 5000 } )
customData 用户信息备注
roles 用户角色:
1. 数据库用户角色:read、readWrite;
2. 数据库管理角色:dbAdmin、dbOwner、userAdmin;
3. 集群管理角色:clusterAdmin、clusterManager、clusterMonitor、hostManager;
4. 备份恢复角色:backup、restore;
5. 所有数据库角色:readAnyDatabase、readWriteAnyDatabase、userAdminAnyDatabase、dbAdminAnyDatabase
6. 超级用户角色:root
> 创建一般用户,也是用createUser
use db01db.createUser({user:"oneUser",pwd:"12345",roles:[{role:"read",db:"db01"},{role:"read",db:"db02"},{role:"read",db:"db03"}]})
> 创建一个不受访问限制的超级用户 use admindb.createUser({user:"superuser",pwd:"pwd",roles:["root"] })
--------------------------------------------------------------------------------------------------------------------------
修改用户密码
use admin
db.changeUserPassword("useame", "xxx")
--------------------------------------------------------------------------------------------------------------------------
查看用户信息
db.runCommand({usersInfo:"userName"})
--------------------------------------------------------------------------------------------------------------------------
修改密码和用户信息
db.runCommand( { updateUser:"useame", pwd:"xxx", customData:{title:"xxx"} })
注意:和用户管理相关的操作基本都要在admin数据库下运行,要先use admin;
作者:我的小草鱼
来源链接:https://www.cnblogs.com/itxiongwei/p/5520690.html
版权声明:
1、JavaClub(https://www.javaclub.cn)以学习交流为目的,由作者投稿、网友推荐和小编整理收藏优秀的IT技术及相关内容,包括但不限于文字、图片、音频、视频、软件、程序等,其均来自互联网,本站不享有版权,版权归原作者所有。
2、本站提供的内容仅用于个人学习、研究或欣赏,以及其他非商业性或非盈利性用途,但同时应遵守著作权法及其他相关法律的规定,不得侵犯相关权利人及本网站的合法权利。
3、本网站内容原作者如不愿意在本网站刊登内容,请及时通知本站(javaclubcn@163.com),我们将第一时间核实后及时予以删除。