如何在阿里云上建立Mongo DB数据库并且用Mongo DB Compass客户端连接数据库

如何在阿里云上建立Mongo DB数据库并且用Mongo DB Compass客户端连接数据库

1.先安装宝塔:

yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh

2.在阿里云服务器 ECS的安全,添加两条入方向访问规则。设置优先级100,协议选择自定义TCP,访问来源设置IPV4 0.0.0.0/0,访问目的设置端口号:11111,点击选择11111.提交。设置优先级100,协议选择自定义TCP,访问来源设置IPV4 0.0.0.0/0,访问目的设置端口号:17066,点击选择17066.提交。

3.设置centos的防火墙,放行端口:11111和17066。

复制代码
sudo systemctl start firewalld
sudo firewall-cmd --zone=public --add-port=11111/tcp --permanent
sudo firewall-cmd --zone=public --add-port=11111/udp --permanent
sudo firewall-cmd --zone=public --add-port=17066/tcp --permanent
sudo firewall-cmd --zone=public --add-port=17066/udp --permanent
sudo firewall-cmd --reload
sudo systemctl status firewalld
# 验证端口是否已开放
sudo firewall-cmd --zone=public --list-ports

2.登录宝塔:

复制代码
https://118.104.120.103:11111/home

3.在宝塔上安装MongoDB。

4.在宝塔首页页面设置MongoDB配置:bindIp设置0.0.0.0;port设置17066,最后不要用默认的27017;开启安全认证,设置root密码(如:123456)。不设置0.0.0.0外网不能访问,不开启安全认证,知道你的IP和端口号谁都能登录。重启MongoDB。

5.在宝塔的数据库中找到MongoDB,添加本地数据库,填写数据库名称gbd_order;添加远程数据库:数据库地址填写:127.0.0.1;端口号填写17066;密码填写123456.重启服务器。

6.在本地命令行ping服务器地址:

复制代码
(base) apple@CQIMAC-L1A9Q05R GroupBuyParkingSpace % ping 118.104.120.103
PING 118.104.120.103 (118.104.120.103): 56 data bytes
64 bytes from 118.104.120.103: icmp_seq=0 ttl=53 time=15.357 ms
64 bytes from 118.104.120.103: icmp_seq=1 ttl=53 time=14.767 ms
64 bytes from 118.104.120.103: icmp_seq=2 ttl=53 time=14.916 ms

7.在本地命令行测试是否能登录数据库:

复制代码
(base) CQIMAC-L1A9Q05R:GroupBuyParkingSpace apple$ telnet 118.104.120.103 17066
Trying 118.104.120.103...
telnet: connect to address 118.104.120.103: Operation timed out
telnet: Unable to connect to remote host

代表本地无法连接服务器的数据库,就是外网无法访问服务器的数据库。一般是bindIp不是设置0.0.0.0或系统防火墙没有放行端口或阿里云服务器 ECS的安全没有正确添加入方向访问规则放行端口号。

复制代码
(base) CQIMAC-L1A9Q05R:GroupBuyParkingSpace apple$ telnet 118.104.120.103 17066
Trying 118.104.120.103...
Connected to 118.104.120.103.
Escape character is '^]'.

代表成功。

8.Mongo DB Compass客户端设置连接字符串:mongodb://root:123456@118.104.120.103:17066/gbd_order/?authSource=admin&useNewUrlParser=true&useUnifiedTopology=true。保存并连接。

若报错:

复制代码
mongodb://root:123456@118.104.120.103:17066/gbps_order/?authSource=admin&useNewUrlParser=true&useUnifiedTopology=true  本地访问数据数据库成功,远程连接数据库报错:{"remote":"124.90.248.132:5228","client":"conn159","doc":{"application":{"name":"MongoDB Compass"},"driver":{"name":"nodejs","version":"6.21.0"},"platform":"Node.js v22.21.1, LE","os":{"name":"darwin","architecture":"arm64","version":"24.6.0","type":"Darwin"}}}}
{"t":{"$date":"2026-01-27T14:15:27.950+08:00"},"s":"I",  "c":"ACCESS",   "id":20249,   "ctx":"conn159","msg":"Authentication failed","attr":{"mechanism":"SCRAM-SHA-256","speculative":true,"principalName":"root","authenticationDatabase":"admin","remote":"124.90.248.132:5228","extraInfo":{},"error":"AuthenticationFailed: SCRAM authentication failed, storedKey mismatch"}}
{"t":{"$date":"2026-01-27T14:15:27.969+08:00"},"s":"I",  "c":"NETWORK",  "id":22944,   "ctx":"conn158","msg":"Connection ended","attr":{"remote":"124.90.248.132:6765","uuid":"c8c1f0b7-eb5e-4e9a-b47a-f4fafa71fa4e","connectionId":158,"connectionCount":1}}
{"t":{"$date":"2026-01-27T14:15:27.971+08:00"},"s":"I",  "c":"NETWORK",  "id":22944,   "ctx":"conn159","msg":"Connection ended","attr":{"remote":"124.90.248.132:5228","uuid":"6919bf98-7b06-4edc-9f6b-0ec476e61fc9","connectionId":159,"connectionCount":0}}

在宝塔首页检查Mongo DB数据库是否正常启动,然后检查第4,5,6,7步。并且检查/www/server/mongodb下的bin是否是一个文件夹,并且里面有问题件。我遇到过检查bin是一个文件,很不正常,通过重装Mongo DB,重复第4,5,6,7步才解决。

相关推荐
ʚB҉L҉A҉C҉K҉.҉基҉德҉^҉大3 小时前
自动化机器学习(AutoML)库TPOT使用指南
jvm·数据库·python
哈__3 小时前
多模融合 一体替代:金仓数据库 KingbaseES 重构企业级统一数据基座
数据库·重构
老邓计算机毕设3 小时前
SSM医院病人信息管理系统e7f6b(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面
数据库·医院信息化·ssm 框架·病人信息管理
2601_949613023 小时前
flutter_for_openharmony家庭药箱管理app实战+药品分类实现
大数据·数据库·flutter
dyyx1114 小时前
使用Scikit-learn进行机器学习模型评估
jvm·数据库·python
踢足球09295 小时前
寒假打卡:2026-01-27
数据库
不想写bug呀5 小时前
MySQL索引介绍
数据库·mysql
weixin_499771555 小时前
使用Seaborn绘制统计图形:更美更简单
jvm·数据库·python
青春男大5 小时前
Redis和RedisTemplate快速上手
java·数据库·redis·后端·spring·缓存
冉冰学姐5 小时前
SSM医院预约挂号管理系统q9ig2(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面
数据库·毕业设计·医院预约挂号系统·ssm 框架