前言
说明:我的生产环境使用的MongoDB是阿里上的,所以搭建版本采用当前与阿里一致的版本3.4.2。
安装:Windows上安装MongoDB这里就不再说明了。我在安装的时候选择的是Custom,为了修改安装目录。
安装完成以后并不能使用,我们还需要把MongoDB作为Windows服务自动启动。这里需要分4步:
- 不开启身份验证的情况下安装服务;
- 创建管理员用户;
- 卸载服务;
- 开启身份验证模式安装服务;
如果不想开启身份验证那么只执行第一步即可。
不开启身份验证的情况下安装服务
首先需要创建数据库文件的存放位置:“F:\MongoDB\db”以及日志存放位置:“F:\MongoDB\logs\”。
之后在命令提示符中MongoDB的目录下执行服务创建命令:
mongod.exe --logpath F:\MongoDB\logs\mongodb.log --logappend --dbpath F:\MongoDB\db --directoryperdb --serviceName MongoDB -install
如果是PowerShell是执行命令:
.\mongod.exe --logpath F:\MongoDB\logs\mongodb.log --logappend --dbpath F:\MongoDB\db --directoryperdb --serviceName MongoDB -install
通过mongod --help命令可以查看命令参数列表,以下是在安装MongoDB时常用的参数:
参数 | 描述 |
--bind_ip | 绑定服务IP,若绑定127.0.0.1,则只能本机访问,不指定默认本地所有IP |
--logpath | 定MongoDB日志文件,注意是指定文件不是目录 |
--logappend | 使用追加的方式写日志 |
--dbpath | 指定数据库路径 |
--port | 指定服务端口号,默认端口27017 |
--serviceName | 指定服务名称 |
--serviceDisplayName | 指定服务名称,有多个mongodb服务时执行。 |
--install | 指定作为一个Windows服务安装。 来源: http://www.runoob.com/mongodb/mongodb-window-install.html |
启动服务:
net start mongodb
创建管理员用户
命令提示符中MongoDB的目录下链接数据库:
mongo
链接系统数据库:
use admin
创建用户:
db.createUser({user:"admin",pwd:"123456",roles:[{"role":"userAdmin","db":"admin"},{"role":"root","db":"admin"},{"role":"userAdminAnyDatabase","db":"admin"}]})
其中“admin”是用户名“123456”是密码,根据需要进行修改。
对帐号授权:
db.auth("admin","123456")
这样一个用户就创建完成了。
卸载服务
在命令提示符中MongoDB的目录下执行服务创建命令:
mongod.exe -remove
如果是PowerShell是执行命令:
.\mongod.exe -remove
开启身份验证模式安装服务
在命令提示符中MongoDB的目录下执行服务创建命令:mongod.exe --logpath F:\MongoDB\logs\mongodb.log --logappend --dbpath F:\MongoDB\db --directoryperdb --serviceName MongoDB -install --auth
如果是PowerShell是执行命令:
.\mongod.exe --logpath F:\MongoDB\logs\mongodb.log --logappend --dbpath F:\MongoDB\db --directoryperdb --serviceName MongoDB -install --auth
之后就必须使用之创建的用户名和密码登录了:
mongo -u admin -p 123456 localhost:27017/admin
这里推荐一款客户端操作程序:Robomongo