Linux安装MongoDB数据库,实现外网远程连接访问

news2024/11/25 14:41:57

文章目录

  • 1. 配置Mongodb源
  • 2. 安装MongoDB
  • 3. 局域网连接测试
  • 4. 安装cpolar内网穿透
  • 5. 配置公网访问地址
  • 6. 公网远程连接
  • 7. 固定连接公网地址
  • 8. 使用固定地址连接

简单几步实现Linux安装mongoDB数据库并且结合cpolar内网穿透实现在公网环境下的远程连接。

1. 配置Mongodb源

进入yum.repos.d目录

cd  /etc/yum.repos.d 

新建一个下载源文件

vim  mongodb-org-4.0.repo 

在文件里面添加下面内容,然后保存

[mngodb-org]
name=MongoDB Repository
baseurl=http://mirrors.aliyun.com/mongodb/yum/redhat/7Server/mongodb-org/4.0/x86_64/
gpgcheck=0
enabled=1

image-20230418154404590

2. 安装MongoDB

执行命令安装,执行后等待安装完成

yum -y install mongodb-org

出现完毕表示安装完成

image-20230418155030584

查看一下安装的位置

whereis mongod

可以看到mongodconf配置文件的目录所在

image-20230418155146455

修改一下mongod.conf配置文件

vim /etc/mongod.conf

bindIp: 127.0.0.1改为bindIp: 0.0.0.0然后保存

image-20230418155448996

然后启动mongoDB,下面一系列是操作命令

启动mongodb :systemctl start mongod.service

停止mongodb :systemctl stop mongod.service

重启mongodb :systemctl restart mongod.service

查看状态mongodb :systemctl status mongod.service

设置mongodb开机自启动 :systemctl enable mongod.service

启动后我们查看一下状态

image-20230418160038472

默认的mongodb端口为27017 TCP协议,在上面我们的配置文件中可以看到。 如果为防火墙使用的是 FirewallD,则可以使用以下命令:

sudo firewall-cmd --zone=public --add-port=27017/tcp --permanent

设置完重启防火墙

sudo firewall-cmd --reload

3. 局域网连接测试

我们使用图形化工具连接,这边使用navicat进行测试连接,在navicat新建一个MongoDB连接,因为安装的时候没有输入账户密码,所以我们直接输入ip地址和端口,点击测试连接出现连接成功。

image-20230418163403956

4. 安装cpolar内网穿透

上面我们在本地Linux安装了mongodb数据库并且局域网测试ok,下面我们安装cpolar内网穿透工具,通过cpolar的TCP公网地址,我们可以很容易实现在外远程访问MongoDB数据库,而无需公网IP,无需设置路由器。下面是安装cpolar步骤。

cpolar官网地址:https://www.cpolar.com/

  • 使用一键脚本安装命令
curl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh | sudo bash
  • token认证

登录cpolar官网后台,点击左侧的验证,查看自己的认证token,之后将token贴在命令行里:

cpolar authtoken xxxxxxx

20230206171248

  • 向系统添加服务
sudo systemctl enable cpolar
  • 启动cpolar服务
sudo systemctl start cpolar

5. 配置公网访问地址

成功启动cpolar服务后,我们在浏览器上访问Linux局域网ip地址+9200端口,登录cpolar web UI管理界面。

登录成功后,点击左侧仪表盘的隧道管理——创建隧道,创建一个http协议的隧道指向mongoDB的27017端口:

  • 隧道名称:可自定义,注意不要与已有的隧道名称重复
  • 协议:tcp
  • 本地地址:27017
  • 域名类型:免费选择随机域名
  • 地区:选择China VIP

点击创建

image-20230418164119075

然后打开在线隧道列表,查看并且复制tcp协议的公网地址,注意无需复制tcp://

image-20230418170956762

6. 公网远程连接

打开navicat 或者其他连接工具,输入上面我们cpolar中创建的公网地址,端口号对应地址后面的端口,

image-20230418171050519

点击测试连接,出现连接成功表示成功

image-20230418171126365

7. 固定连接公网地址

要注意的是,以上步骤使用的是随机临时tcp端口地址,所生成的公网地址为随机临时地址,该公网地址24小时内会随机变化。我们接下来为其配置固定的TCP端口地址,该地址不会变化,设置后将无需每天重复修改地址。

配置固定tcp端口地址需要将cpolar升级到专业版套餐或以上。

  • 保留一个固定tcp地址

登录cpolar官网后台,点击左侧的预留,找到保留的tcp地址,我们来为远程mongoDB保留一个固定tcp地址:

  • 地区:选择China vip
  • 描述:即备注,可自定义

点击保留

image-20230418165620238

地址保留成功后,系统会生成相应的固定公网地址,将其复制下来

image-20230418165733635

  • 配置固定tcp地址

在浏览器上访问Linux局域网ip地址+:9200端口,登录cpolar web ui管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到我们上面创建的tcp隧道,点击右侧的编辑

image-20230418165851431

修改隧道信息,将保留成功的固定tcp地址配置到隧道中

  • 端口类型:修改为固定tcp端口
  • 预留的tcp地址:填写官网保留成功的地址

点击更新

image-20230418165922827

隧道更新成功后,点击左侧仪表盘的状态——在线隧道列表,可以看到公网地址已经更新成为了固定tcp地址。

image-20230418165947193

8. 使用固定地址连接

打开连接工具,输入我们刚刚配置成功的固定tcp地址,端口为地址后面对应的地址,点击测试连接

image-20230418170227498

出现连接成功表示成功,现在这个地址不会再随机变化了,只要保持隧道为在线状态,我们就可以在外公网环境下远程连接内网linux的mongoDB数据库。

image-20230418170305053

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/459331.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

聊聊开源类ChatGPT工作——MOSS

自从ChatGPT发布以来,它的“三步走方案”就好比《九阴真经》流落到AI江湖中,各大门派练法不一,有人像郭靖一样正着练,循序渐进;有人像欧阳锋一样反着练,守正出奇;也有像梅超风一样仅练就半部《九…

5、认真学习枚举类型

1、数字枚举 // 这里你的TSLint可能会报一个:枚举声明只能与命名空间或其他枚举声明合并。这样的错误,这个不影响编译 enum Status {Uploading,Success,Failed } console.log(Status.Uploading); // 0 console.log(Status["Success"]); // 1 …

智能骨传导蓝牙耳机该如何选,分享几款不错的骨传导蓝牙耳机

骨传导耳机是一种通过骨骼传递声音的耳机。相比于传统的耳塞和头戴式耳机,它有许多优点,例如: 1.安全。因为无需通过耳膜进行声音传递,所以对听力影响较小。 2.对耳朵没有伤害。 3.舒适。 4.节省时间。由于无需通过耳膜传递声音&a…

Codefi基于区块链的开发框架

💗wei_shuo的个人主页 💫wei_shuo的学习社区 🌐Hello World ! Codefi基于区块链的开发框架 Codefi技术是一种基于区块链的开发框架,它提供了一系列工具和服务,帮助开发者轻松构建和管理去中心化应用程序。C…

【Access】win 10 / win 11:Access 下载、安装、使用教程(「管理信息系统」实践专用软件)

目录 一、前言 二、卸载 Office 三、下载 Office Tool Plus 四、安装 Office(内含 Access) (1)启动 Office Tool Plus (2)部署 (3)安装 Office(内含 Access&#…

C++STL详解(10) -- 使用哈希表封装unordered_set和unordered_map

文章目录 哈希表模板参数改造针对模板参数V改造增加仿函数获取具体数据类型. 哈希表的正向迭代器正向迭代器中的内置成员:正向迭代器的成员函数 哈希表插入函数的修改(适用于unordered_map)一个类型K去做set和unordered_set他的模板参数的必备条件.unordered_set的模拟实现(完整…

看完这篇文章你就彻底懂啦{保姆级讲解}-----(LeetCode刷题242有效的字母异位词) 2023.4.25

目录 前言算法题(LeetCode刷题242有效的字母异位词)—(保姆级别讲解)分析题目:有效的字母异位词代码:算法思想: 结束语 前言 本文章一部分内容参考于《代码随想录》----如有侵权请联系作者删除…

详解js跨页面传参以及API的解释

详解js跨页面传参 前言什么是跨页面传参?跨页面传参本质是什么?常见的跨页面传参方法URL参数传递localStorage和sessionStorage参数传递Cookie传递 经常听到API,那么到底的什么是API? 前几天有粉丝私信我,希望能把js跨…

超越YOLOv8,飞桨推出精度最高的实时检测器RT-DETR!

‍‍ 众所周知,实时目标检测( Real-Time Object Detection )一直由 YOLO 系列模型主导。 飞桨在去年 3 月份推出了高精度通用目标检测模型 PP-YOLOE ,同年在 PP-YOLOE 的基础上提出了 PP-YOLOE 。后者在训练收敛速度、下游任务泛化能力以及高性能部署能力…

搞懂 API ,地图 API 制作方法分享

地图 API 是一种基于 Web 开发的应用程序编程接口,可以用于创建和展示地图及地理信息。以下是一些地图 API 制作的方法: 选择地图 API 平台:目前市场上有很多地图 API 平台供选择,比如 Google Maps API、百度地图 API、高德地图 A…

Chess.com:象棋社区网站每月访问量达 2.8 亿,年收入在 5000 万至 1 亿之间

Chess.com是世界领先的国际象棋社区。它始于 2007 年,目前年收入超过 5000 万美元。 核心功能 Live Chess 花了 5 个多月才发布。到那时,该网站已经拥有近100,000名会员。Chess.com 域名的重要性他们 80% 的用户来自过去 4 年 Chess.com的故事是如何开…

[算法前沿]--004-transformer的前世今生

文章目录 1.transformer介绍1.1 注意力机制1.2 Transformer架构1.2.1编码器1.2.2解码器 2. Transformer中的模块2.1 注意模块2.1.1 缩放点积注意事项2.1.2 多头注意 2.2 Transformer中的注意事项2.2.1 自注意2.2.2 掩蔽的自注意(自回归或因果注意)2.2.3 …

027:Mapbox GL加载circle样式图层,用data-driven风格绘制圆形

第027个 点击查看专栏目录 本示例的目的是介绍演示如何在vue+mapbox中加载circle样式图层。圆形样式图层在地图上呈现一个或多个实心圆。 您可以使用圆形图层来配置矢量切片中点或点集合要素的视觉外观。 圆形层渲染其半径以屏幕单位测量的圆形。 直接复制下面的 vue+mapbox源…

HTML5 <label> 标签、HTML5 <map> 标签

HTML5 <label> 标签 实例 HTML5 <label>标签用于为 input 元素做出标记。 带有两个输入字段和相关标记的简单 HTML 表单&#xff1a; <form action"demo_form.asp"><label for"male">Male</label><input type"ra…

【libuv】入门:queue work 的跨线程异步通信

通过阅读2012年的uv book 入门。有中文版 Handles and Requests libuv works by the user expressing interest in particular events. This is usually done by creating a handle to an I/O device, timer or process. Handles are opaque structs named as uv_TYPE_t where…

【分布式搜索引擎ES01】

分布式搜索引擎ES 分布式搜索引擎ES1.elasticsearch概念1.1.ES起源1.2.倒排索引1.2.1.正向索引1.2.2.倒排索引 1.3.es的一些概念1.3.1.文档和字段1.3.2.索引和映射1.3.3.mysql与elasticsearch 1.4.1安装es、kibana、IK分词器1.4.2扩展词词典与停用词词典 2.索引库操作2.1.mappi…

设置网格旋转轴心【Babylonjs】

推荐&#xff1a;用 NSDT场景设计器 快速搭建3D场景。 Babylon.js 中的轴心&#xff08;Pivot Point&#xff09;是使用父节点设置网格变换中心的替代方法&#xff0c;即用作旋转中心或放大中心的点。 注意&#xff1a;使用 setPivotPoint 产生的行为不同于在 3DS Max 和 Maya …

vue-cli的使用和单页面应用程序、使用vue-cli脚手架创建vue项目步骤

1.vue-cli的使用 vue-cli是Vue.js开发的标准工具。它简化了程序员基于webpack创建工程化的Vue项目的过程。 引用自vue-cli官网上的一句话: 程序员可以专注在撰写应用上&#xff0c;而不必花好几天去纠结webpack配置的问题。 中文官网: https://cli.vuejs.org/zh/ 1.1 安装 …

WTI纽约原油CFD是什么?交易技巧有哪些?

WTI常称为美国原油或纽约原油&#xff0c;WTI是West Texas Intermediate 的简称&#xff0c;代表西德州中级原油(West Texas Intermediate)&#xff0c;偶尔称为德州轻甜原油(Texas Light Sweet)&#xff0c;它是大宗商品交易中核心的石油基准。那么本文就来具体的聊聊&#xf…

接口自动化【四】(在接口自动化【三】上的优化_加入了类前置,表格中替换数据,断言)

前言 一、使用 unittest框架结合setUpClass前置条件上传图片 二、一个类里面同时有类方法和实例方法----补充知识点&#xff08;需要引用类方法中的变量&#xff09; 三、结合类前置setUpClass&#xff0c;ddt&#xff0c;Excel表格数据&#xff0c;进行上传图片 四、加入l…