请使用新工具: NoSQL Manager for MongoDB,否则:MongoVUE连接报错(Invalid credentials for database 'admin'.)
参考链接 :
一、下载:http://www.runoob.com/mongodb/mongodb-window-install.html
二、配置:
MongoDB将数据目录存储在 db 目录下。但是这个数据目录不会主动创建,需要我们在安装完成后需要手动创建。
为日志文件,数据文件和配置文件创建目录
配置文件目录:D:\MongoData\config\mongod.cfg
日志文件目录:D:\MongoData\dblog\
数据文件目录:D:\MongoData\db\
配置mongod.cfg
systemLog:
destination: file
path: D:\MongoData\dblog\mongod.log
logAppend: true
storage:
journal:
enabled: true
dbPath: D:\MongoData\db
net:
port: 27017
#security:
#authorization: enabled
三、安装服务
配置好上面后,在到cmd
中执行(使用管理员权限):
D:\Program Files\MongoDB\Server\3.2\bin>mongod.exe --config "D:\MongoData\config\mongod.cfg" --install
四、启动mongodb服务:net start MongoDB
停止服务 :net start MongoDB
五、创建管理员账号
管理员命令cmd到Mongodb根目录执行> mongo
use admin db.createUser( { user: "admin", pwd: "123", roles: [ { role: "root", db: "admin" } ] } )
使用MongoVUE工具连接Mongo
查看用户:show users
六、MongoDB数据库角色
内建的角色
数据库用户角色:read、readWrite;
数据库管理角色:dbAdmin、dbOwner、userAdmin;
集群管理角色:clusterAdmin、clusterManager、clusterMonitor、hostManager;
备份恢复角色:backup、restore;
所有数据库角色:readAnyDatabase、readWriteAnyDatabase、userAdminAnyDatabase、dbAdminAnyDatabase
超级用户角色:root // 这里还有几个角色间接或直接提供了系统超级用户的访问(dbOwner 、userAdmin、userAdminAnyDatabase)
内部角色:__system
角色说明:
Read:允许用户读取指定数据库
readWrite:允许用户读写指定数据库
dbAdmin:允许用户在指定数据库中执行管理函数,如索引创建、删除,查看统计或访问system.profile
userAdmin:允许用户向system.users集合写入,可以找指定数据库里创建、删除和管理用户
clusterAdmin:只在admin数据库中可用,赋予用户所有分片和复制集相关函数的管理权限。
readAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读权限
readWriteAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读写权限
userAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的userAdmin权限
dbAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的dbAdmin权限。
root:只在admin数据库中可用。超级账号,超级权限
七、CMD执行:
mongo --host 127.0.0.1:27017
浏览器上直接访问:http://127.0.0.1:27017 出现:
It looks like you are trying to access MongoDB over HTTP on the native driver port.
就表示连接成功了
八、MongoDB 创建数据库
语法
use DATABASE_NAME
创建一个 souyunku
的数据库,使用 db
命令查看
> use souyunku
switched to db souyunku
> db
souyunku
>
执行:
use admin
//验证
db.auth('admin','123')
//授权
db.grantRolesToUser("admin", [ { role:"root", db:"admin"}])
//
show collections
//
db.system.users.find()
Mongodb官方关于角色的定义:https://docs.mongodb.com/manual/core/security-built-in-roles/
为方便将命令保存为.cmd文件后,直接双击文件启动Mongo服务
@echo off
start cmd /k "cd/d C:\Program Files\MongoDB\Server\3.4\bin&&net start MongoDB"
如以安装包形式安装服务,可直接用以下命令:
@echo off
net start MongoDB