1. 去官网上下载适合自己电脑的MongoDB版本下载MongoDB。网址:https://www.mongodb.com/download-center#community
下载zip的.
注:也可以使用安装版本,但是不要装在Programs File 文件夹下面,系统对于空格不识别,需要注意一下
本文将MongoDB安装在E盘
2.在E盘创建数据库目录以及log日志目录
E:\DB\MongoDB\Data
E:\DB\MongoDB\Log
3.以管理员身份打开cmd
将目录定位到mongodb下的bin文件。输入mongod --dbpath X:\XXXXX\data(刚刚创建的data文件夹路径)
mongod --logpath E:\DB\MongoDB\Log\mongodb.log --logappend 此命令是以追加的方式在指定文件填写日志
mongod --dbpath E:\DB\MongoDB\Data --directoryperdb 此命令是创建文件存放目录,并且每一个db拥有一个目录这条命令执行完打开localhost:27017显示:
4.配置MongoDB为Windows服务
以管理员身份运行的(Win10搜索cmd,右键cmd程序以管理员身份运行,cd C:\Pom \MongoDB\Server\3.6\bin):本人尝试--logpath 和 --dbpath 的命令顺序颠倒,就会显示too many positional options have been specified on the command line,但是按照下面的顺序则安全执行成功:
mongod --bind_ip 0.0.0.0 --logpath E:\DB\MongoDB\Log\mongodb.log --logappend --dbpath E:\DB\MongoDB\Data --directoryper
使用上诉语句可以将第二个warning去掉。
现在我们来去掉第一个warning
启动服务:net start mongodb
5.创建账号及使用auth登陆
1)mongo 命令进入数据库
2)use admin
3)MongoDB server version: 3.6.10
> use admin
switched to db admin
> db.createUser({user:"test",pwd:"test",roles:[{"role":"userAdmin","db":"admin"},{"role":"root","db":"admin"},{"role":"userAdminAnyDatabas
e","db":"admin"}]})
Successfully added user: {
"user" : "test",
"roles" : [
{
"role" : "userAdmin",
"db" : "admin"
},
{
"role" : "root",
"db" : "admin"
},
{
"role" : "userAdminAnyDatabase",
"db" : "admin"
}
]
}
Read:允许用户读取指定数据库
readWrite:允许用户读写指定数据库
dbAdmin:允许用户在指定数据库中执行管理函数,如索引创建、删除,查看统计或访问system.profile
userAdmin:允许用户向system.users集合写入,可以找指定数据库里创建、删除和管理用户
clusterAdmin:只在admin数据库中可用,赋予用户所有分片和复制集相关函数的管理权限。
readAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读权限
readWriteAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读写权限
userAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的userAdmin权限
dbAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的dbAdmin权限。
root:只在admin数据库中可用。超级账号,超级权限(本次创建的就是超级账号)
4)授权db.auth(“账号”,”密码”)
> db.auth("test","test")
1
5)原本的服务是无auth登陆 现在需要卸载。用管理员打开cmd输入:sc delete MongoDB
6)打开服务管理页面,找到MongoDB,右键停止,之后刷新,MongoDB服务消失
7)mongod --bind_ip 0.0.0.0 --logpath E:\DB\MongoDB\Log\mongodb.log --logappend --dbpath E:\DB\MongoDB\Data --directoryperdb --auth --serviceName "MongoDB" --serviceDisplayName "MongoDB" --install
启动服务
不在显示warning