Windows 安装 MongoDB 并内网穿透远程连接

news2024/11/17 1:48:09

本文目录

      • 1.前言
      • 2.MongoDB数据库的安装
        • 2.1 MongoDB下载安装
        • 2.2 MongoDB连接测试
        • 2.3 cpolar下载安装
      • 3.Cpolar端口设置
        • 3.1 Cpolar云端设置
        • 3.2.Cpolar本地设置
      • 4.公网访问测试
      • 5.结语

1.前言

现代电子技术日新月异,并且快速应用到我们的生活中,与之相应的,软件技术也在快速更新,特别是超大规模的软件大面积应用,如Facebook、Titok等这样的超大型平台,对数据库的要求也提出更高要求,原有的MySQL数据库已经渐渐暴露出缺点,MongoDB这样的新生代数据库因此获得发展机会,最近很多科技大厂也在推动MongoDB的应用。

作为网络技术的爱好者,笔者也下载了MongoDB进行初步了解(仅限于了解,而不是深入研究),并且简单研究了MongoDB与其他软件配合使用的情况,折腾和研究也是不错的消遣。现在,笔者就为大家介绍,如何使用和配置Cpolar,实现远程连接和操作MongoDB数据库。

2.MongoDB数据库的安装

MongoDB数据库作为新生代数据库的代表,能够适应超大型平台对于数据库快速响应的要求,并且应用了不少新概念,如分布式存储,快速响应机制,支持完全索引、查询,自动处理碎片,支持云计算层次的扩展性,支持多种语言等等。这些特点只是MongoDB介绍上说的,具体使用情况还是要看个人。话不多说,让我们开始折腾吧。

2.1 MongoDB下载安装

MongoDB的下载很简单,只要到其官网下载即可

20230309093801

下载完成后,一路“下一步”就可以了

20230309093802

需要注意的是,在安装过程中,MongoDB会询问是否设置用户名和密码,我们直接点击complate进行设置即可

20230309093803

20230309093804

安装程序运行结束后,会出现这个界面,我们点击“start”即可进入MongoDB的主界面

20230309093805

20230309093806

2.2 MongoDB连接测试

接下来,就是对连接软件进行设置。这里使用的是navicat软件,直接到其官网上下载即可(DBeaver必须要企业版才支持MongoDB,有兴趣的同学可以尝试下,当然可能有其他数据库连接软件,但也基本遵循这个步骤)。具体的安装过程就不再冗述了,毕竟安装过程没啥可说的,直接快进到软件主界面,点击左上角的连接按钮,并在下拉菜单中找到MongoDB的选项。

20230309093807

点击该选项后,就会进入MongoDB的连接设置页面。由于这一步只是测试在本地连接MongoDB数据库,因此可以随意设置。

20230309093808

20230309093809

只要显示连接成功,我们就可以进行下一步,使用cpolar为本地的MongoDB端口(默认为27017),生成一个TCP连接,让我们在公共互联网上也能连接到局域网(家里或者办公室)设备上的MongoDB数据库。

2.3 cpolar下载安装

Cpolar的下载和安装其实也没啥可说的,只要搜索Cpolar的官网,并在主页面下载对应版本进行安装即可。Cpolar支持很多操作系统,能使用TCP、http、ftp、tls等协议进行内网穿透,操作也很简单便捷,所以以其作为远程连接的首选。

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

20230309093810

3.Cpolar端口设置

回到正题,在cpolar下载安装完成后,就可以进行内网穿透的设置。笔者的cpolar已经升级到了vip版(毕竟笔者是懒人,不想每24小时就设置一次远程连接),能够支持固定TCP、http等隧道,因此直接设置固定TCP隧道,用以连接MongoDB。

3.1 Cpolar云端设置

首先登录cpolar的官网,点击官网主界面左侧的预留按钮,进入cpolar云端的预留隧道设置。这里设置预留的隧道是空白隧道,可以简单理解为内网穿透隧道的入口。

20230309093811

预留页面,我们找到保留的TCP地址项,对连接MongoDB数据库的隧道进行设置,设置的内容也非常简单。

20230309093812

首先是地区,cpolar提供了很多地区服务器选择,这项就近设置即可;接着是描述,可以看做这条隧道的识别信息和备注,只要输入自己能记住的内容即可。

20230309093813

完成这两项设置后,就可以点击右侧的保留按钮,生成一个公共互联网地址。如果不打算保留这个地址,可以点击右侧的X将其删除。

20230309093814·

3.2.Cpolar本地设置

完成cpolar云端的设置后,就可以登录cpolar本地客户端,点击cpolar客户端主界面左侧隧道管理项下的创建隧道按钮,进入cpolar本地的隧道设置页面,将云端生成的地址与本地MongoDB端口连接起来。这里我们主要对以下几项进行设置。

  • 隧道名称:就是这条数据隧道的备注,用来区分不同隧道的用处;
  • 协议:就是这条数据隧道的传输协议,如网页、数据传输、设备互联等,本例中选择TCP协议;
  • 本地地址:这里需要填入软件(或内网设备)的端口号,因此我们填入MongoDB的固定端口号27017;
  • 端口类型:也就是内网穿透数据隧道类型,在cpolar云端设置了保留隧道的,就可以选择“固定TCP端口”;若只是临时测试,就可以选择“随机临时TCP端口”(需要注意,固定TCP端口要将cpolar升级至专业版及以上);
  • 预留的TCP地址:在选择了“固定TCP端口”后就会出现该栏位,我们将cpolar云端生成的地址粘贴进来(若勾选的是“随机临时TCP端口”选项,则不会出现该栏位);

完成设置后,点击下方的“创建”按钮,就能将云端空白数据隧道与本地MariaDB连接起来,生成一条可以远程连接本地MongoDB的数据隧道。

20230309093815

数据隧道创建成功后,cpolar客户端会自动跳转至隧道管理项下的隧道列表页面。在这个页面,我们可以对创建的隧道进行控制(如查看隧道是否运行、开启隧道、关闭隧道、对隧道信息进行重编辑等)

20230309093816

而这条数据隧道的公共互联网地址,则可以在状态项下的在线隧道列表中看到。

20230309093817

4.公网访问测试

完成cpolar数据隧道的设置后,就可以在其他网络环境的设备上,打开navicat,点击主界面左上方的连接按钮,将cpolar生成的公网地址粘贴进去。需要注意的是,在主机栏位填入的地址信息不带 tcp://和最后的:+几位数字,几位数字则填入下一行的端口栏位内。

20230309093818

填写完毕后,先点击左下方的测试连接,远程连接成功后,再点击右下方的确认,在navicat中保留。

20230309093819

5.结语

到这里,我们就成功的完成了远程连接MongoDB数据库的设置,而这个设置在某些情况下,绝不仅仅是折腾着好玩而已(笔者想起被抓回公司搞数据库的日志,一把辛酸泪……)。当然连接软件并不是非要用Navicat,也可以使用同样思路应用其他连接软件访问公司(或家里)的MongoDB数据库,按各位看官喜好即可。

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

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

相关文章

SAP BTEs的简介及实现

一、认识BTE BTE(Business Transaction Event)也称之为“业务交易事件”,一般的增强(Tcode:SMOD|CMOD)依旧使用ABAP进行二次开发,然而BTE则提供了RFC调用其它产品的可能(Tcode:FIBF)。BTE的设计思路更加简单,和BADI有点类似。在标准程序中留有…

ssm框架之spring:浅聊IOC

IOC 前面体验了spring,不过其运用了IOC,至于IOC( Inverse Of Controll—控制反转 ) 看一下百度百科解释: 控制反转(Inversion of Control,缩写为IoC),是面向对象编程中的一种设计原则&#x…

训练自己的GPT2-Chinese模型

文章目录效果抢先看准备工作环境搭建创建虚拟环境训练&预测项目结构模型预测续写训练模型遇到的问题及解决办法显存不足生成的内容一样文末效果抢先看 准备工作 从GitHub上拉去项目到本地,准备已训练好的模型百度网盘:提取码【9dvu】。 gpt2对联训…

又一个开源第一!飞桨联合百舸,Stable Diffusion推理速度遥遥领先

AIGC(AI Generated Content),即通过人工智能方法生成内容,是当前深度学习最热门的方向之一。其在绘画、写作等场景的应用也一直层出不穷,其中,AI绘画是大家关注和体验较多的方向。 Diffusion系列文生图模型可以实现AI绘画应用&…

八股总结(一)C++语言特性、基础语法、类与模板、内存管理、拷贝控制、STL及C++11新特性

layout: post title: 八股总结(一)C语言特性、基础语法、类与模板、内存管理、拷贝控制、STL及C11新特性 description: 八股总结(一)C语言特性、基础语法、类与模板、内存管理、拷贝控制、STL及C11新特性 tag: 八股总结 总结的大部…

使用python求PLS-DA的方差贡献率

以鸢尾花数据集为例,实现PLS-DA降维,画出降维后数据的散点图并求其方差贡献率。 效果图 完整代码 # 导入所需库 import numpy as np from sklearn.cross_decomposition import PLSRegression from sklearn.datasets import load_iris from sklearn.pre…

synchronized原理mointor

Monitor对象头 在java中普通对象的对象头信息 Mark Word记录分代年龄、加锁的状态;Klass Word指向类对象的指针; 其中Mark Word结构 monitor执行原理 我们在加了重量级锁synchronize后,对象头的mark word会指向一个monitor,mon…

pandas库中的read_csv函数读取数据时候的路径问题详解(ValueError: embedded null character)

read_csv()函数不仅是R语言中的一个读取csv文件的函数,也是pandas库中的一个函数。pandas是一个用于数据分析和处理的python库。它的read_csv函数可以读取csv文件里的数据,并将其转化为pandas里面的DataFrame对象。它由很多参数可以设置,例如…

Express的详细教程

Express 文章目录Express初识ExpressExpress简介Express的基本使用安装创建基本的web服务器监听GET请求监听POST请求把内容响应给客户端获取URL中携带的查询参数获取URL中的动态参数托管静态资源express.static()托管多个静态资源挂载路径前缀nodemon为什么要使用nodemon安装no…

【专项训练】动态规划-1

动态规划 以上,并没有什么本质的不一样,很多时候,就是一些小的细节问题! 要循环,要递归,就是有重复性! 动态规划:动态递推 分治 + 最优子结构 会定义状态,把状态定义对 斐波那契数列 递归、记忆化搜索,比较符合人脑思维 递推:直接开始写for循环,开始递推 这里…

mysql无法启动服务及其他问题总结

文章目录1.安装后关于配置的问题显示【发生系统错误,拒绝访问】命令行Command Line Client闪退2.显示【MySQL服务无法启动】问题检查端口被占用删除data文件并初始化配置my.ini/.conf文件重新安装MySQL1.安装后关于配置的问题 显示【发生系统错误,拒绝访…

Apache Dubbo 存在反序列化漏洞(CVE-2023-23638)

漏洞描述 Apache Dubbo 是一款轻量级 Java RPC 框架 该项目受影响版本存在反序列化漏洞,由于Dubbo在序列化时检查不够全面,当攻击者可访问到dubbo服务时,可通过构造恶意请求绕过检查触发反序列化,执行恶意代码 漏洞名称Apache …

【Linux】 -- make/Makefile

目录 Linux项目自动化构建工具 – make/Makefile 背景 依赖关系和依赖方法 多文件编译 项目清理 make原理 Linux项目自动化构建工具 – make/Makefile 背景 一个工程的源文件不计其数 按照其类型、功能、模块分别放在若干个目录当中 Makefile定义了一系列的规则来指定&…

DJ1-3 计算机网络和因特网

目录 一、物理介质 1. 双绞线 2. 同轴电缆 3. 光纤线缆 4. 无线电磁波 二、端系统上的 Internet 服务 1. 面向连接的服务 TCP(Transmission Control Protocol) 2. 无连接的服务 UDP(User Datagram Protocol) TCP 和 UD…

TypeScript(四)接口

目录 前言 定义 用法 基本用法 约定规则 属性控制 任意属性 可选属性 只读属性 定义函数 冒号定义 箭头定义 接口类型 函数接口 索引接口 继承接口 类接口 总结 前言 在介绍TS对象类型中,为了让数组每一项更具体,我们使用 string [ ]…

C++面向对象编程之四:成员变量和成员函数分开存储、this指针、const修饰成员和对象

在C中&#xff0c;成员变量和成员函数是分开存储的&#xff0c;只有非静态成员变量才存储在类中或类的对象上。通过该类创建的所有对象都共享同一个函数#include <iostream> using namespace std;class Monster {public://成员函数不占对象空间&#xff0c;所有对象共享同…

数据库基本功之复杂查询的子查询

子查询返回的值可以被外部查询使用,这样的复合查询等效与执行两个连续的查询. 1. 单行单列子查询 (>,<,,<>,>,<)内部SELECT子句只返回一行结果 2.多行单列子查询 (all, any, in,not in) all (>大于最大的,<小于最小的) SQL> select ename, sal from…

Linux创建并挂载NAS

1 目标 在Linux服务器1上创建nas服务器&#xff0c;并指定可读写目录在Linux服务器2上挂载上述nas磁盘在Linux服务器2上设置开机自动挂载nas磁盘 2 搭建环境 两台Linux系统服务器&#xff0c;如下&#xff1a; 服务器1 IP为192.168.31.101 服务器2 IP为192.168.31.102 3 在服…

自动化测试——selenium多浏览器处理

这里写目录标题一、背景二、pytes hook函数1、conftest.py2、测试用例3、执行测试用例一、背景 用户使用的浏览器(frefox,chrome,IE 等) web应用应该能在任何浏览器上正常的工作&#xff0c;这样能吸引更多的用户来使用。 是跨不同浏览器组合验证网站或web应用程序功能的过程 …

Python高频面试题——生成器(最通俗的讲解)

生成器定义在 Python 中&#xff0c;使用了 yield 的函数被称为生成器&#xff08;generator&#xff09;。跟普通函数不同的是&#xff0c;生成器是一个返回迭代器的函数&#xff0c;只能用于迭代操作&#xff0c;更简单点理解生成器就是一个迭代器。 在调用生成器运行的过程中…