Linux CentOS系统安装SQL Server并结合内网穿透实现公网访问本地数据

在这里插入图片描述
🔥博客主页 小羊失眠啦.
🎥系列专栏《C语言》 《数据结构》 《C++》 《Linux》 《Cpolar》
❤️感谢大家点赞👍收藏⭐评论✍️


在这里插入图片描述
前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站。

文章目录

  • 前言
  • 1. 安装sql server
  • 2. 局域网测试连接
  • 3. 安装cpolar内网穿透
  • 4. 将sqlserver映射到公网
  • 5. 公网远程连接
  • 6.固定连接公网地址
  • 7.使用固定公网地址连接

前言

简单几步实现在Linux centos环境下安装部署sql server数据库,并结合cpolar内网穿透工具,创建安全隧道将其映射到公网上,获取公网地址,实现在外异地远程连接家里/公司的sqlserver数据库,而无需公网IP,无需设置路由器,亦无需云服务器。

1. 安装sql server

下载 SQL Server 2022 (16.x) Red Hat 存储库配置文件:

sudo curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/8/mssql-server-2022.repo

运行以下命令以安装 SQL Server:

sudo yum install -y mssql-server

然后等待安装完成

image-20230418133937641

包安装完成后,使用其完整路径运行 mssql-conf setup,按照提示设置 SA 密码并选择版本。

sudo /opt/mssql/bin/mssql-conf setup

前面三个版本是免费提供许可的:Evaluation、Developer 和 Express 版,我们选择第二个作为测试使用

image-20230418134248124

然后同意一下许可条款,输入yes

image-20230418134351933

选择中文语言

然后设置管理员密码,把密码记住,不要忘了

image-20230418134542902

然后安装完成,会自动启动

完成配置后,验证服务是否正在运行:

systemctl status mssql-server

默认的 SQL Server 端口为1433,TCP协议。 如果为防火墙使用的是FirewallD,则可以使用以下命令:

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

设置完重启防火墙

sudo firewall-cmd --reload

此时,安装完成了。

注意:如果需要使用命令行连接,在安装sqlserver的时候就需要安装sql server命令行工具,可以参考官方教程:https://learn.microsoft.com/zh-cn/sql/linux/quickstart-install-connect-red-hat?view=sql-server-ver16

2. 局域网测试连接

由于我没有安装命令行工具,所以我们使用图形化工具连接,这边使用navicat进行测试连接,输入局域网ip地址,输入用户名sa,密码上面设置的密码,点击测试连接出现连接成功

点击数据库,勾选默认的数据库,

image-20230418141543515

登陆后即可看到默认表信息

image-20230418141621762

3. 安装cpolar内网穿透

上面步骤里,我们在本地Linux安装了sql server 数据库并且局域网测试ok。

接下来我们安装cpolar内网穿透工具,通过cpolar的tcp公网地址,我们可以很容易实现远程访问sql server,而无需自己注册域名购买云服务器。cpolar它支持http/https/tcp/tls/ftp协议,使用不限制流量,支持永久免费使用。

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

4. 将sqlserver映射到公网

成功启动cpolar服务后,我们在浏览器上访问cpolar web UI管理界面:Linux局域网ip地址+9200端口,使用cpolar邮箱账号登录(如果你还没注册账号的话,在cpolar官网注册一个)

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

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

点击创建

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

image-20230418144336674

5. 公网远程连接

打开navicat或者其他连接工具,输入上面我们使用cpolar内网穿透工具所获取的公网地址,以及sqlserver用户名密码,点击测试连接,出现连接成功表示成功。

需要注意:公网地址中的冒号(:)需改为逗号(,)

image-20230418144828933

6.固定连接公网地址

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

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

  • 保留一个固定tcp地址

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

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

点击保留

image-20230418145833394

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

image-20230418151401097

  • 配置固定tcp地址

在浏览器上登录cpolar web UI管理界面,Linux局域网ip地址+:9200端口

点击左侧仪表盘的隧道管理——隧道列表,找到我们上面创建的远程sqlserver隧道,点击右侧的编辑

image-20230418151434081

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

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

点击更新

image-20230418151510331

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

image-20230418151535219

7.使用固定公网地址连接

打开navicat连接工具,输入官网保留的固定tcp地址,点击测试连接,提示连接成功。

需要注意,公网地址后面端口的冒号(:)需改为逗号(,)

image-20230418152150422

现在这个公网地址不会再随机变化了,只要保持隧道正常在线,我们在外就可以通过这个固定公网地址来远程连接局域网的sqlserver数据库。

在这里插入图片描述

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

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

相关文章

Ubuntu在终端编辑完配置文件怎么保存退出?

1.退出,按【Ctrlx】,回车键。 2.保存,则先按【Ctrlo】,回车键,再按【Ctrlx】退出

小白水平理解面试经典题目LeetCode 1025 Divisor Game【动态规划】

1025 除数游戏 小艾 和 小鲍 轮流玩游戏&#xff0c;小艾首先开始。 最初&#xff0c;黑板上有一个数字 n 。在每个玩家的回合中&#xff0c;该玩家做出的动作包括&#xff1a; 选择任意 x&#xff0c;使 0 < x < n 和 n % x 0 。将黑板上的数字 n 替换为 n - x 。 此…

Dom节点继承树基本操作

遍历节点树 基于元素节点树的遍历 parcntElcrmcnt -> 返回当前元素的父元秦节点 (IE不兼容)children ->只返回当前元素的元素子节点node.childFlement(ount nodechildren.length当前元素节点的子元素(IE不兼容)firstElementChild->返回的是第一个元素节点(IE不兼容)l…

IDEA-常用插件

1、Mybatis Log Free 当我们使用mybatis log在控制台输出sql 内容&#xff0c;输出内容将语句与参数分开打印&#xff0c;还需要手动将参数替换到指定位置。 使用对应插件后&#xff0c;自动将输出内容组装成完整的可直接执行的SQL 在插件市场 查看对应名称&#xff0c;并安装。…

【数据结构】图的存储与遍历

图的概念 图是由顶点集合及顶点间的关系组成的一种数据结构&#xff1a;G (V&#xff0c; E) 图分为有向图和无向图 在有向图中&#xff0c;顶点对<x, y>是有序的&#xff0c;顶点对<x&#xff0c;y>称为顶点x到顶点y的一条边(弧)&#xff0c;<x, y>和&l…

基于微信小程序的校园跑腿系统的研究与实现,附源码

博主介绍&#xff1a;✌程序员徐师兄、7年大厂程序员经历。全网粉丝12w、csdn博客专家、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ &#x1f345;文末获取源码联系&#x1f345; &#x1f447;&#x1f3fb; 精彩专栏推荐订阅&#x1f447;…

IDEA无法下载源代码(Maven无法下载源代码)

问题 这两天在突击SpringBoot&#xff0c;按ctrl打开一个SpringBoot的类想要下载源代码&#xff0c;居然下载不了&#xff0c;右下角弹窗提示无法下载源代码 百度查了查&#xff0c;在本地仓库里下载失败的目录下有个.lastUpdate的文件记录了一些信息 #NOTE: This is a Maven…

算法沉淀——BFS 解决最短路问题(leetcode真题剖析)

算法沉淀——BFS 解决最短路问题&#xff08;leetcode真题剖析&#xff09; 01.迷宫中离入口最近的出口02.最小基因变化03.单词接龙04.为高尔夫比赛砍树 BFS&#xff08;广度优先搜索&#xff09;是解决最短路径问题的一种常见算法。在这种情况下&#xff0c;我们通常使用BFS来…

特征提取匹配方案不止SuperPoint

局部特征匹配在计算机视觉领域广泛应用&#xff0c;涵盖图像检索、3D重建和目标识别等领域。然而&#xff0c;由于视点和光照变化等因素&#xff0c;改进匹配的准确性和鲁棒性仍然面临挑战。近年来&#xff0c;深度学习模型的引入引发了对局部特征匹配技术的广泛探索。这些方法…

莱卡云怎么样?简单测评下莱卡云韩国CN2云服务器

莱卡云服务器厂商&#xff0c;国内持证企业服务器商家&#xff0c;运作着香港、美国、韩国、镇江、日本、绍兴、枣庄、等数据中心的云服务器、独立服务器出租、设备托管、CDN等业务。今天为大家带来的是莱卡云韩国CN2服务器的详细评测&#xff0c;该云服务器的数据中心位于韩国…

外汇天眼:Monex计划重新任命八位现任董事,并任命三位新董事

Monex Group, Inc. 今日宣布&#xff0c;公司的提名委员会已决定在2024年6月举行的第20届股东年度大会上提议任命多位候选人加入董事会。 尽管公司认为现任董事熟悉其业务&#xff0c;因此目前尚不是替换他们的时机&#xff0c;但鉴于运营环境的显著变化和管理决策日益困难&…

显微测量|共聚焦显微镜大倾角超清纳米三维显微成像

用于材料科学领域的共聚焦显微镜&#xff0c;基于光学共轭共焦原理&#xff0c;其超高的空间分辨率和三维成像能力&#xff0c;提供了全新的视角和解决方案。 工作原理 共聚焦显微镜通过在样品的焦点处聚焦激光束&#xff0c;在样品表面进行快速点扫描并逐层获取不同高度处清…

与时共进,芯芯向荣丨纷享销客获时创意“最佳合作伙伴”表彰

近日&#xff0c;时创意存储产业园封顶仪式暨成立十五周年庆典在深圳圆满举行。本次盛典以“创意有时 芯芯向RONG”为主题&#xff0c;时创意董事长倪黄忠携全体员工&#xff0c;与政府嘉宾、产业伙伴等1200余人济济一堂&#xff0c;纷享销客也共襄盛举&#xff0c;并荣获【20…

element 表单提交图片(表单上传图片)

文章目录 使用场景页面效果前端代码 使用场景 vue2 element 表单提交图片   1.点击【上传图片】按钮择本地图片&#xff08;只能选择一张图片&#xff09;后。   2.点击图片&#xff0c;支持放大查看。   3.点击【保存】按钮&#xff0c;提交表单。 页面效果 前端代码…

【Jvm】运行时数据区域(Runtime Data Area)原理及应用场景

文章目录 前言&#xff1a;Jvm 整体组成 一.JDK的内存区域变迁Java8虚拟机启动参数 二.堆0.堆的概念1.堆的内存分区2.堆与GC2.1.堆的分代结构2.2.堆的分代GC2.3.堆的GC案例2.4.堆垃圾回收方式 3.什么是内存泄露4.堆栈的区别5.堆、方法区 和 栈的关系 三.虚拟机栈0.虚拟机栈概念…

TrustGeo框架代码构成

该存储库提供了TrustGeo框架的原始PyTorch实现。 一、基础用法 1、需求 Requirements 代码使用python 3.8.13、PyTorch 1.12.1、cudatoolkit 11.6.0和cudnn 7.6.5进行了测试。通过Anaconda安装依赖: # create virtual environment conda create --name TrustGeo python=3.8.…

【C++之语法篇002】

C学习笔记---002 C知识语法篇1、缺省参数1.1、什么是缺省参数?1.2、缺省参数分类1.3、缺省参数的总结 2、函数重载2.1、什么是函数重载?2.2、C支持函数重载?2.3、那么对于函数重载&#xff0c;函数名相同该如何处理?2.4、那么C是如何支持重载&#xff1f; 3、引用3.1、什么…

QGis软件 —— 3、QGis创建形状图层点、通过xlsx及csv加载点

(方式一 ) 通过QGis创建形状图层点 1、如下gif&#xff0c;演示了创建形状图层 2、如下gif&#xff0c;演示了在高德地图上&#xff0c;形状图层上添加点 3、如下gif&#xff0c;演示了对形状图层点查看详细信息 4、如下gif&#xff0c;演示了对形状图层点查看属性表&#xff0…

生成式 AI - Diffusion 模型的数学原理(2)

来自 论文《 Denoising Diffusion Probabilistic Model》&#xff08;DDPM&#xff09; 论文链接&#xff1a; https://arxiv.org/abs/2006.11239 Hung-yi Lee 课件整理 文章目录 一、基本概念二、VAE与Diffusion model三、算法解释四、训练过程五、推理过程 一、基本概念 Diff…

代码随想录算法训练营第15天—二叉树04 | ● *110.平衡二叉树 ● *257. 二叉树的所有路径 ● 404.左叶子之和

*110.平衡二叉树 题目链接/文章讲解/视频讲解&#xff1a;https://programmercarl.com/0110.%E5%B9%B3%E8%A1%A1%E4%BA%8C%E5%8F%89%E6%A0%91.html 考点 后序遍历二叉树高度计算 我的思路 错误地将平衡二叉树的定义等价为判断整体二叉树的最大深度和最小深度之差是否大于1 视…