`

windows安装mongodb并设置系统服务(带认证)

阅读更多

windows中安装mongodb和linux不同,windows安装mongodb很简单,只要去https://www.mongodb.com/download-center?jmp=nav#community下载,然后安装即可。

安装后,我们希望mongodb能随机启动,作为服务存在,而不要每次都手动去用命令行启动mongodb。
我将MongoDB自定义安装到了D:\MongoDB\3.4目录中。
首先,我们为mongodb做一个配置文件,省得启动的时候带太多的参数。
mongod.conf

systemLog:
destination: file
logAppend: true

path: D:\MongoDB\mongod.log

storage:
dbPath: D:\MongoDB\data
journal:
enabled: true

processManagement:
#fork: true
pidFilePath: D:\MongoDB\mongod.pid
net:
port: 27017
bindIp: 0.0.0.0
security:
authorization: enabled

创建文件夹:D:\MongoDB\data

添加系统服务:
D:\MongoDB\3.4\bin\mongod -f D:\MongoDB\mongod.conf --serviceName "MongoDB" --serviceDisplayName "MongoDB" --install
如果要卸载系统服务:
D:\MongoDB\3.4\bin\mongod --remove
启动系统服务:
net start MongoDB
停止系统服务:
net stop MongoDB
 
如果想在cmd中方便的使用mongo命令,那么建议将D:\MongoDB\3.4\bin添加到环境变量Path中。

 

设置MongoDB授权登陆:
首先,更改配置文件,注释掉授权登陆的2行配置,用#。

#security:
# authorization: enabled

然后重启mongod:
net stop MongoDB
net start MongoDB
使用命令行,输入mongo即可连接到mongod,因为没有使用认证控制,所以一般连接到mongod以后,会看到类似“WARNING: Access control is not enabled for the database.”的waining。
然后执行如下指令:

use admin;

db.createUser({
user: "root",
pwd: "root",
roles: [{
role: "root",
db: "admin"
}]
});

show users;
至此root用户创建好了,注意如果是生产环境,密码千万不要也是root。
去掉配置文件中的那两行注释:

security:
authorization: enabled

再重启mongodb:
net stop mongodb
net start mongodb
再连接:

mongo

use admin

db.auth('root', 'root')

show users

或者直接以root用户连接,跟mysql手法完全相同:

mongo -uroot -proot admin

show users

此时如果想创建某个应用的数据库,并设置只能操作该数据库的普通用户,可以使用如下命令:

use test;
db.createUser({
user: "test",
pwd: "test",
roles: [{
role: "readWrite",
db: "test"
}]
});
show users;

至此MongoDB数据库从安装,到配置windows服务,到创建授权用户搞定。
如果想连接MongoDB,除了命令行这种最通用但最不方便的方式以外,还可以借助客户端,我首先推荐跟phpMyAdmin雷同的RockMongo,虽然这个管理工具很老并不再看到有维护的迹象了吧,但用起来的确很方便。
其次我推荐用官方推荐的NoSQL Manager for MongoDB,这个工具用起来比百度搜索到的那些客户端都要好用。

 

如果要修改密码,请执行:
db.changeUserPassword('root', 'new password');
分享到:
评论

相关推荐

    深入云计算 MongoDB管理与开发实战详解pdf.part1

    2.5.2 在Windows平台下的下载与安装 2.5.3 在Linux平台下的下载与安装 2.6 MongoDB shell的使用 2.6.1 启动Shell 2.6.2 使用Shell对MongoDB的基本操作 2.6.3 使用Shell的诀窍 2.6.4 特殊的集合名...

    vue+node+mongodb仿美团外卖点餐系统带支付功能.zip

    操作系统 (OS):如Windows、macOS、Linux、Unix等,是管理和控制计算机硬件与软件资源、提供公共服务、协调计算机各部分工作的基础平台,是用户与计算机硬件之间的桥梁。 驱动程序:为特定硬件设备提供接口,使...

    基于 node.js + Mongodb 构建的后台系统.zip

    操作系统 (OS):如Windows、macOS、Linux、Unix等,是管理和控制计算机硬件与软件资源、提供公共服务、协调计算机各部分工作的基础平台,是用户与计算机硬件之间的桥梁。 驱动程序:为特定硬件设备提供接口,使...

    深入云计算 MongoDB管理与开发实战详解pdf.part2

    2.5.2 在Windows平台下的下载与安装 2.5.3 在Linux平台下的下载与安装 2.6 MongoDB shell的使用 2.6.1 启动Shell 2.6.2 使用Shell对MongoDB的基本操作 2.6.3 使用Shell的诀窍 2.6.4 特殊的集合名...

    使用 Koa + MongoDB + Redis 搭建论坛系统.zip

    操作系统 (OS):如Windows、macOS、Linux、Unix等,是管理和控制计算机硬件与软件资源、提供公共服务、协调计算机各部分工作的基础平台,是用户与计算机硬件之间的桥梁。 驱动程序:为特定硬件设备提供接口,使...

    使用Meteor全栈框架以JavaScript开发的Web聊天服务器+即时在线聊天

    使用Meteor全栈框架以JavaScript开发的Web聊天服务器+即时在线聊天源码大小:15.7MB开发语言:PHP+Mysql操作系统:Windows,Linux源码简介与安装说明: Rocket.Chat是使用Meteor全栈框架以JavaScript开发的Web聊天...

    毕业设计基于微信小程序的在线免费小说的开发.rar

    windows系统可以参考我写的教程,mac自己捣鼓,总之你需要创建一个名为myapp的数据库,本地可以不开启认证,后端运行起来后可以正常连接mongo就行。 ps: Mongo的连接配置都在 api/server/datasources.json 里,具体...

    商品管理系统.zip

    操作系统 (OS):如Windows、macOS、Linux、Unix等,是管理和控制计算机硬件与软件资源、提供公共服务、协调计算机各部分工作的基础平台,是用户与计算机硬件之间的桥梁。 驱动程序:为特定硬件设备提供接口,使...

    云计算第二版

    6.5.2 在Windows系统中安装Hadoop 208 6.6 HDFS使用 215 6.6.1 HDFS 常用命令 215 6.6.2 HDFS 基准测试 219 6.7 HBase安装使用 219 6.7.1 HBase的安装配置 219 6.7.2 HBase的执行 220 6.7.3 Hbase编程实例 221 6.8 ...

    MF00685-.Net Core微服务分布式开发框架源码.zip

    3、系统采用组件有:Redis、Rabbitmq、mongodb。 4、docker采用consul集群、Skywalking组件。 5、后端:.Net6 + EFCore + JWT + Dapper + quartz.net + Grpc +Nlog + swagger 6、系统分为: 用户中心:系统支撑...

    毕业设计--基于微信小程序的在线免费小说应用

    微书--小程序阅读应用 ...windows系统可以参考我写的,mac自己捣鼓,总之你需要创建一个名为myapp的数据库,本地可以不开启认证,后端运行起来后可以正常连接mongo就行。 ps: Mongo的连接配置都在 api/s

Global site tag (gtag.js) - Google Analytics