服务器是CentOS7.x,本人在经受服务器端大佬强烈BS之下仍然选用宝塔使用安装 MongoDB,以及系统防火墙可视化管理功能。
为何你会看到此文章
- 作者在试图在远程访问MongoDB,且无果
- 作者看了5篇不同层次与角度教你如何访问 + 照着做的情况下还是无果
- 作者独立思考与尝试并且成功连接,打算分享
为何跟着市面上的博客做会没有用:
- 通常博客主遇到的情况与我们遇到的情况不同,博客作者只在当下的情况下写了解决方案
- 大部分博客主都是转载,导致文章质量低下
- 文章时间已经久远致过时
是什么原因导致我们无法远程连接:
- 请确认你已经成功安装与运行MongoDB
- 请确认你的服务器的27107端口已经添加在了安全组
- 请确认你的服务器防火墙已经允许27107端口
- 请确认你的MongoDB配置文件已经正常配置
问题1的调试:服务器的Shell端输入以下命令且不报错:
1 |
mongo |
问题2:在后端安全组里进行检查:
问题3的调试:作者在宝塔可视化中进行的添加,修改之后就会生效,不用重启;之前尝试过命令,但无效。
问题4:同上,修改之后即生效
调试连接:本人使用Robomong客户端进行的连接,输入IP地址与端口号,连接就成功了。
还应该做些什么:
安全考虑:建立用户密码认证访问,这应当是必做题目了。
第2步: 上图中MongoDB配置表里的 authorization: enabled 这一行,为启用认证。(默认是disabled, 如果单词拼错,将导致进程无法运行)
第1步: 服务器的终端中,依次输入以下
1 2 3 4 5 |
mongo use admin db.createUser( {user: "账户名",pwd: "密码",roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]}) |
然后在客户端配置:
OK,请享用。