无公网IP下,如何实现公网远程访问MongoDB文件数据库

文章目录

  • 前言
  • 1. 安装数据库
  • 2. 内网穿透
    • 2.1 安装cpolar内网穿透
    • 2.2 创建隧道映射
    • 2.3 测试随机公网地址远程连接
  • 3. 配置固定TCP端口地址
    • 3.1 保留一个固定的公网TCP端口地址
    • 3.2 配置固定公网TCP端口地址
    • 3.3 测试固定地址公网远程访问

前言

MongoDB是一个基于分布式文件存储的数据库。由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。

MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。它支持的数据结构非常松散,是类似json的bson格式,因此可以存储比较复杂的数据类型。Mongo最大的特点是它支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引。

简单几步实现MongoDB远程访问。

1. 安装数据库

打开MongoDB官网https://www.mongodb.com/try/download/community,这里以windows版本为例。

20230220114401

下载好后,双击安装即可,安装到这一步,须点击complate设置账号密码

20230220114402

进入后可以设置一下密码,然后点击next,或者直接点击next安装即可

20230220114403

安装好后,我们使用连接工具测试连接,这里使用navicat连接

20230220114404

2. 内网穿透

本地连接没问题后,目前该数据库只能在局域网内被访问,不过我们可以使用cpolar内网穿透工具,将内网的MongoDB数据库映射到公网上,实现远程访问,不需要公网IP,也不用设置路由器。

2.1 安装cpolar内网穿透

进入cpolar官网下载页面,下载windows安装包到本地然后解压一路默认安装即可

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

20230220114405

2.2 创建隧道映射

cpolar安装成功后,双击打开cpolar【或者在浏览器上访问本地9200端口:127.0.0.1:9200】,使用cpolar邮箱账号登录 web UI管理界面,如果还没有注册cpolar账号的话,点击免费注册,会跳到cpolar官网注册一个账号就可以了

20230220114406

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

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

点击创建

20230220114407

隧道创建成功后,点击左侧的状态——在线隧道列表,可以看到刚刚创建的隧道已经有生成了相应的公网地址,将其复制下来

20230220114408

2.3 测试随机公网地址远程连接

打开navicat,输入tcp公网地址:3.tcp.cpolar.top端口号11249,然后点击测试连接,出现连接成功即可。

20230220114409

3. 配置固定TCP端口地址

由于以上创建的隧道是随机地址隧道,地址会在24小时内变化,为了使连接更加稳定,我们可以为其配置一个固定的tcp连接地址。

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

3.1 保留一个固定的公网TCP端口地址

登录cpolar官网,点击左侧的预留,选择保留的TCP地址,我们先来为远程MongoDB保留一个固定端口地址。

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

点击保留

20230220114411

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

3.2 配置固定公网TCP端口地址

在浏览器上访问9200端口,http://127.0.0.1:9200/,登录cpolar web ui管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到MongoDB隧道,点击右侧的编辑

20230220114413

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

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

点击更新

20230220114414

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

20230220114415

3.3 测试固定地址公网远程访问

测试使用固定TCP端口地址远程MongoDB,再次打开navicat,使用固定tcp地址连接

20230220114416

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

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

相关文章

抖音本地生活服务商申请条件

抖音的本地生活服务商目前有两种,一种是可以做全国的服务商,我们一般叫抖音本地生活服务商,一种是区域优待服务商,也就是后面出来的服务商,这两种服务商的申请方式大同小异。 相同的地方就是都需要给平台交保证金。抖…

网站监控有什么作用?

科技改变生活,科技的发展让我们的生活越来越精彩丰富,数据中心机房监控系统也可以称为“自我监控系统”,主要是针对机房所有的设备及环境进行集中监控和管理的,其监控对象构成机房的各个子系统:动力系统、环境系统、消…

CV计算机视觉每日开源代码Paper with code速览-2023.11.23

点击CV计算机视觉,关注更多CV干货 论文已打包,点击进入—>下载界面 点击加入—>CV计算机视觉交流群 1.【基础网络架构:Transformer】White-Box Transformers via Sparse Rate Reduction: Compression Is All There Is? 论文地址&am…

【Java】文件I/O-字节流转换成字符流

上文中我们讲了Reader,Writer,InputStream,OutputStream这四种流的基本用法🔢 【Java】文件I/O-文件内容操作-输入输出流-Reader/Writer/InputStream/OutputStream四种流 其中InputStream和OutputStream两个类涉及到的都是byte&…

rabbitMQ对消息不可达处理-备份交换机/备份队列

生产者发送消息,在消息不可达指定队列时,可以借助扇出类型交换机(之前写过消息回退的处理方案,扇出交换机处理的方案优先级高于消息回退)处理不可达消息,然后放置一个备份队列,供消费者处理不可…

IP地址的地理位置:固定性与动态性的平衡

IP地址的地理位置是网络通信中一个重要的元素,常被用于定位设备和用户。然而,很多人好奇,IP地址的地理位置是否会发生变化?本文将深入讨论IP地址地理位置的固定性与动态性之间的平衡,以及造成这种变化的因素。 1. IP地…

DevEco Studio设置每次进入 是否自动进入上一次的项目

首先 我们第一次创建项目 并不是这个界面 如果我们想在这个界面创建项目的话 可以 点击左上角 File 下的 New 下的 Create Project 这里 我们可以点击左上角 File 选择下面的 Settings… 这个界面就有非常多的配置 然后 我们选择到下图操作的位置 这里有一个Reopen projects…

MySQL进阶知识:锁

目录 前言 全局锁 表级锁 表锁 元数据锁(MDL) 意向锁 行级锁 行锁 行锁演示 间隙锁/临界锁 演示 前言 MySQL中的锁,按照锁的粒度分,分为以下三类 全局锁:锁定数据库中的所有表。表级锁:每次操…

民安智库(第三方市场调查公司):专业调研引领某月饼生产商企业发展

在中国的传统佳节中,月饼是一种重要的节日食品,也是送礼的首选。某月饼生产商一直以来以其高品质、独特口味的月饼而备受消费者喜爱。为了更好地了解消费者对产品的满意度,该月饼生产商决定委托民安智库(湖北知名满意度测评公司&a…

el-row错位问题解决

<el-row type"flex" style"flex-wrap:wrap">

yolov8 原木识别模型

一、模型介绍 模型基于 yolov8数据集采用SKU-110k&#xff0c;这数据集太大了十几个 G&#xff0c;所以只训练了 10 轮左右就拿来微调了原木数据微调&#xff1a;纯手工标注 200 张左右原木图片&#xff0c;训练 20 轮的效果 PS&#xff1a;因为训练时间比较长 Google 的 Cola…

关于pyqt5与moviepy到打包的坑点

1,pyqt5 关于pyqt5 designer.exe 的使用主要就是了解pyqt5右侧菜单栏的功能使用 打包后的文件&#xff0c;需要继承改类&#xff0c;进行图形指令交互 关于pyqt5&#xff0c;要了解信号&#xff0c;和槽点的相互关系。 我在pyqt5中使用moviepy的时候&#xff0c;需要用到异步…

[VNCTF 2023] web刷题记录

文章目录 象棋王子电子木鱼BabyGo 象棋王子 考点&#xff1a;前端js代码审计 直接查看js源码&#xff0c;搜一下alert 丢到控制台即可 电子木鱼 考点&#xff1a;整数溢出 main.rs我们分段分析 首先这段代码是一个基于Rust的web应用程序中的路由处理函数。它使用了Rust的异步…

SpringMVC多种类型数据响应

SpringMVC多种类型数据响应入门 1.概念 RequestMapping 作用&#xff1a;用于建立请求URL和处理请求方法之间的对应关系 位置&#xff1a; 类上&#xff0c;请求URL的第一级访问目录。此处不写的话&#xff0c;就相当于应用的根目录 方法上&#xff0c;请求URL的第二级访问目…

交叉熵损失函数(Cross-Entropy Loss Function)

交叉熵损失函数&#xff08;Cross-Entropy Loss Function&#xff09; 在处理机器学习或深度学习问题时&#xff0c;损失/成本函数用于在训练期间优化模型。目标几乎总是最小化损失函数。损失越低&#xff0c;模型越好。交叉熵损失是最重要的成本函数。它用于优化分类模型。对…

10.0 输入输出 I/O

IO操作主要是指使用Java程序完成输入&#xff08;Input&#xff09;、输出&#xff08;Output&#xff09;操作。所谓输入是指将文件内容以数据流的形式读取到内存中&#xff0c;输出是指通过Java程序将内存中的数据写入到文件中&#xff0c;输入、输出操作在实际开发中应用较为…

TiDB专题---2、TiDB整体架构和应用场景

上个章节我们讲解了TiDB的发展和特性&#xff0c;这节我们讲下TiDB具体的架构和应用场景。首先我们回顾下TiDB的优势。 TiDB的优势 与传统的单机数据库相比&#xff0c;TiDB 具有以下优势&#xff1a; 纯分布式架构&#xff0c;拥有良好的扩展性&#xff0c;支持弹性的扩缩容…

一、Linux系统概述和安装

目录 1、Linux系统概述 2、Linux发行版介绍 3、虚拟机软件介绍 4、VMware安装 5、Linux系统&#xff08;CentOS&#xff09;系统安装 6、登录并查看IP地址 7、Linux连接工具CRT使用 7.1 概述 7.2 CRT安装 7.3 使用步骤 7.4 文件上传 8、Linux的快照 8.1 作用 8.2…

Go 从编译到执行

一、Go运行编译简介 Go语言&#xff08;也称为Golang&#xff09;自从2009年由Google发布以来&#xff0c;已成为现代软件开发中不可或缺的一部分。设计者Rob Pike, Ken Thompson和Robert Griesemer致力于解决多核处理器、网络系统和大型代码库所引发的现实世界编程问题。我们…