如何在CentOS上安装SQL Server数据库并通过内网穿透工具实现远程访问

news2024/11/24 23:12:26

文章目录

  • 前言
  • 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.coloradmin.cn/o/1189925.html

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

相关文章

winRAR常用命令

文章目录 winRAR命令命令开关例子Windows下使用WinRAR命令自动备份文件压缩、注释、解压、删除基础操作添加注释与读取注释从压缩包中删除制定文件解压操作给压缩包内的文件重命名其它 参考 winRAR命令 命令 具体参数如下 RAR 5.50 x64 命令a 添加文件到压缩文件…

爱家房产网站源码 爱家房产网商业版 微信互动营销整合+手机触屏版+经纪人分销

房产网站源码手机访问自动转手机版修改修复如下: 1,修复手机版首页标题头部名称 2,修复手机版首页频道导航按钮 3,新增手机版广告位置显示方式 4,修复手机版首页内容显示样式 5,手机版头部背景颜色ic…

项目管理之如何出道(中)

昨日立冬,各位盆友,有没有吃饺子? 冬天来了,寒冷未约而至,冬雪侵袭北国。未知的变化总能让人产生恐慌和无措,就像行走在荒岛小路,前面遇到的究竟是迷人之景?还是饿狼之瞟&#xff1f…

【 毕设源码推荐 javaweb 项目】 基于 springboot+vue 的在线拍卖系统在线拍卖系统的设计与实现(springboot001)

简介 【 毕设源码推荐 javaweb 项目】 基于 springbootvue 的在线拍卖系统在线拍卖系统的设计与实现 适用于计算机类毕业设计,课程设计参考与学习用途。仅供学习参考, 不得用于商业或者非法用途,否则,一切后果请用户自负。 ::: …

Pytest插件

官方文档:API Reference — pytest documentation BaseReport 定义Case结果输出 >>> from _pytest.reports import TestReport >>> test TestReport(1,1,1,pass,,running) >>> print(dir(test)) [__annotations__, __class__, __delatt…

2024上海智博会,上海国际智慧城市,物联网,大数据展会(世亚智博会)

中国国际智慧城市,物联网,大数据博览会(简称:世亚智博会)自2010年创办以来,至今已成功举办十多届。世亚智博会是中国较高、规模较大、影响力较广的展会;是被国际业界公认的不可错过的名展之一。随着世亚智博会的国际地位和影响不断…

【教3妹学编程-算法题】 在树上执行操作以后得到的最大分数

3妹:2哥,今日都立冬了, 可是天气一点都不冷。 2哥 : 立冬了,晚上要不要一起出去吃饺子?🥟 3妹:好呀好呀,2哥请吃饺子喽 2哥 : 歪歪,我说的是一起出去吃,没说我…

Python tkinter实现复刻Windows记事本UI和菜单的文本编辑器(二)

上一篇:Python tkinter实现复刻Windows记事本UI和菜单的文本编辑器(一)-CSDN博客 下一篇:敬请耐心等待,如发现BUG以及建议,请在评论区发表,谢谢! 相对上一篇文章,本片文…

手把手教你:LLama2原始权重转HF模型

LLama2是meta最新开源的语言大模型,训练数据集2万亿token,上下文长度由llama的2048扩展到4096,可以理解和生成更长的文本,包括7B、13B和70B三个模型,在各种基准集的测试上表现突出,该模型可用于研究和商业用…

Head First Java 第二版

不管你的程序有多大,一定都会有一个main()来作为程序的起点。Java是强类型语言。float f23.5f 如果不加上f,就会被Java当做double处理。对于任意一个Java虚拟机来说,所有的引用大小都一样,但是不同的Java虚拟机可能会以不同的方…

什么是前台、中台、和后台?

前台:即包括与用户直接交互的界面,如:web页、app;也包括服务端各种实时响应用户请求的业务逻辑,如:商品查询、订单系统等。 后台:面向内部运营人员的管理系统、配置系统,如&#xf…

2023.11.9 IDEA 配置 Lombok

目录 什么是 Lombok 如何使用 Lombok Lombok 的 Data 注解 什么是 Lombok Lombok 是一个 Java 库,能自动插入编译器并构建工具,简化 Java 开发它通过注解实现这一目的,可用来帮助开发人员消除 Java 的冗长代码,尤其是对于简单…

通付盾Web3专题 | SharkTeam:Web3安全实践与创新

在Web3领域,安全漏洞、黑客攻击已愈发成为用户和投资者重点关注的领域。如何保障加密资产的安全,Web3黑暗森林中又有哪些新的攻击模式产生,SharkTeam将从一线进行分享和讨论。 我们先来看一下2023年1月到8月的安全事件数量和损失的数据统计。…

【Python自学笔记】python os.getcwd文件目录找不对关于“None”在VSCode里面的奇葩报错

写小组项目的时候需要按照路径读入数据表,数据库和图片列表显示到html,按ChatGPT的答案写了python os.getcwd(),结果迁移到同组同学的电脑上总是报错。 经过一番查询,在CSDN上发现一个完美解决问题的好帖,特此存下链接…

Java数据的基本(原始)类型和引用类型的特点差别

本文作为“Java数据类型”一文的补充https://blog.csdn.net/cnds123/article/details/110517272 Java的数据类型可以分为基本类型(primitive types)和引用类型(reference types)两大类。在实际编程中,要根据需求选择合…

React路由与导航

目录 前言: 什么是React路由? 导航和页面切换 路由参数和动态路由 路由守卫和权限控制 总结 前言: React是一个流行的JavaScript库,用于构建用户界面。在使用React开发Web应用程序时,路由和导航是必不可少的功能…

理解MySQL的日志 Redo、Undo

理解MySQL的Redo日志和Undo日志 1、MySQL 日志文件解决的问题2、redo 日志2.1、redo log 的组成2.2、redo log 刷盘策略2.3、MySQL 的 redo log解决了哪些问题 3、undo 日志3.1、undo 日志作用3.2、undo log 的类型3.3、undo log 的生命周期3.4、事务回滚相关的几个隐藏字段 1、…

【Mysql】where 条件子句之逻辑运算符

逻辑运算符 and &&or ||not ! student表 一.查询分数在80 - 90之间 and写法 &&写法 区间(between ....and......) 二.查询分数不为88 !写法 not写法 三.查询分数大于88或者年龄小于22 满足其中一个条件即可 or写法 ||写法

操作系统 day08(进程通信)

进程通信的概念 进程间通信是指两个进程之间产生数据交互进程通信需要操作系统的支持,由于进程是分配系统资源(包括内存地址)的单位,因此各进程拥有的内存地址空间相互独立。同时为了保证安全,一个进程不能直接访问另…

django安装和rest接口写法

django安装 确保已经安装了Python。命令行中输入python --version来检查Python的版本。 安装Django。你可以在命令行中使用以下命令来安装Django: pip install django创建一个新的Django项目。在命令行中,进入你想要创建项目的目录,并运行以…