MongoDB 在windows服务器安装部署与远程访问配置

5,265 阅读3分钟

一些工作总结,最近在做关于Nodejs和MongoDB的东西。当作自己复习,同时如果有同样有不太熟练的人,希望这篇文章可以帮你节约一点时间。那么,在这篇文章你将会看到。

  • MongoDB 安装与 Mongo Compass安装
  • MongoDB 远程访问配置
  • 针对服务器开放指定访问端口

一、MongoDB 的安装与Mongo Compass安装

安装和部署的环境都是在windows环境下进行的。

首先从 MongoDB 官网上获取到 DB Server和 Compass 的安装包 官网

【DB Server】这个就是DB的主程序

MongoDBServer

【Tools Compass】MongoDB 官方提供的管理工具

主程序安装部步骤比较简单,如果不修改安装路径和 DB 存放路径的话,一直点击下一步直到程序安装完成。但通常情况下,会修改 DB 文件的存放路径。

DB路径

Compass 安装则不需要任何操作,双击启动安装程序后,自动完成安装。

二、MongoDB 远程访问配置

远程访问主要就是修改MongoDB的配置文件mongod.cfg。文件路径是在安装路径下的bin文件夹中。我的是默认路径安装,所以是C:\Program Files\MongoDB\Server\4.0\bin

mongod.cfg

用编辑器打开之后,需要修改的地方有共有两处

1. # network interfaces

将原本的 IP 127.0.0.1 更改为 0.0.0.0,意思是开放给所以 IP 都能访问。可以直接在后面添加指定多个IP地址127.0.0.1,192.168.1.60

IP

2. #security

上一步修改完成之后,其实就能共远程访问了。但这样子不好的,不安全的。需要在安全这个选项中加上验证。

security

这样之后并没有完,还需要为MongoDB添加用户。

添加 MongoDB 用户

添加超级管理员用户。

其中授权数据库为 admin, 授权内置角色为userAdminAnyDatabase. 角色决定对数据库的操作权限。 关于内置角色更详细的信息请防卫官网文档

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

添加指定数据库的用户

db.createUser({user:'user001', pwd:'user001pass', roles: [{ role: "readWrite", db: "studentDB" }]})

到这里,数据配置就完成了,如果没有防火墙限制,理论上数据库以及能够远程访问了。

三、针对服务器开放指定访问端口

由于数服务器的安全策略,数据库的端口是没有对外开发的。如MongoDB的默认端口 27017, 在完成上述配置之后仍然无法访问。但通常不能关闭防火墙,来解决端口问题,因此需要为服务器开放指定的访问端口。

步骤如下:

1. 在 控制面板 > 系统和安全 > Windows Defender 防火墙 找到防火墙高级设置。

FireWall

2. 新增 出站 / 入站 规则。

1. 新建规则

FirewallRule

2. 规则类型 选择 端口, 然后 下一步

Port

3. 协议与端口, 选择 TCP , 特定端口中填写要开放的端口。

TCP

3. 操作, 选择 允许连接

AC

4. 配置文件, 可保持默认,不做任何改动

Cfg

5. 名称,添加对应的名称与描述

Name

然后点击完成即可。同样的步骤来配置 出站规则 。 规则添加成功之后,需要 重启 计算机才能生效。