一些工作总结,最近在做关于Nodejs和MongoDB的东西。当作自己复习,同时如果有同样有不太熟练的人,希望这篇文章可以帮你节约一点时间。那么,在这篇文章你将会看到。
- MongoDB 安装与 Mongo Compass安装
- MongoDB 远程访问配置
- 针对服务器开放指定访问端口
一、MongoDB 的安装与Mongo Compass安装
安装和部署的环境都是在windows环境下进行的。
首先从 MongoDB 官网上获取到 DB Server和 Compass 的安装包 。
【DB Server】这个就是DB的主程序
【Tools Compass】MongoDB 官方提供的管理工具
主程序安装部步骤比较简单,如果不修改安装路径和 DB 存放路径的话,一直点击下一步直到程序安装完成。但通常情况下,会修改 DB 文件的存放路径。
Compass 安装则不需要任何操作,双击启动安装程序后,自动完成安装。
二、MongoDB 远程访问配置
远程访问主要就是修改MongoDB的配置文件mongod.cfg
。文件路径是在安装路径下的bin文件夹中。我的是默认路径安装,所以是C:\Program Files\MongoDB\Server\4.0\bin
用编辑器打开之后,需要修改的地方有共有两处
1. # network interfaces
将原本的 IP 127.0.0.1
更改为 0.0.0.0
,意思是开放给所以 IP 都能访问。可以直接在后面添加指定多个IP地址127.0.0.1,192.168.1.60
2. #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 防火墙
找到防火墙高级设置。
2. 新增 出站 / 入站 规则。
1. 新建规则
2. 规则类型 选择 端口
, 然后 下一步
3. 协议与端口, 选择 TCP
, 特定端口中填写要开放的端口。
3. 操作, 选择 允许连接
4. 配置文件, 可保持默认,不做任何改动
5. 名称,添加对应的名称与描述
然后点击完成
即可。同样的步骤来配置 出站规则 。 规则添加成功之后,需要 重启 计算机才能生效。