第29篇 在Linux CentOS系統上部署SqlServer資料庫,並實現內網穿透

来源:https://www.cnblogs.com/chenshibao/p/18441664
-Advertisement-
Play Games

在Linux centos環境下安裝部署sql server資料庫,並結合cpolar內網穿透工具,創建安全隧道將其映射到公網上,獲取公網地址,實現在外異地遠程連接家裡/公司的sqlserver資料庫,而無需公網IP,無需設置路由器,亦無需雲伺服器。 1.安裝sql server 下載 SQL Se ...


在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
包安裝完成後,使用其完整路徑運行 mssql-conf setup,按照提示設置 SA 密碼並選擇版本。

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

前面三個版本是免費提供許可的:Evaluation、Developer 和 Express 版,我們選擇第二個作為測試使用
image
然後同意一下許可條款,輸入yes
image
選擇中文語言
image
然後設置管理員密碼,把密碼記住,不要忘了
image
然後安裝完成,會自動啟動
image
完成配置後,驗證服務是否正在運行:

systemctl status mssql-server

image
預設的 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
點擊資料庫,勾選預設的資料庫,
image
登陸後即可看到預設表信息
image

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

image
向系統添加服務

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

點擊創建
image

然後打開線上隧道列表,查看並且複製tcp協議的公網地址。【註意無需複製tcp://】
image

5.公網遠程連接

打開navicat或者其他連接工具,輸入上面我們使用cpolar內網穿透工具所獲取的公網地址,以及sqlserver用戶名密碼,點擊測試連接,出現連接成功表示成功。

需要註意:公網地址中的冒號(:)需改為逗號(,)

image

6.固定連接公網地址

由於以上步驟使用的是隨機臨時tcp埠地址,所生成的公網地址為隨機臨時地址,該公網地址24小時內會隨機變化。我們接下來為其配置固定的TCP埠地址,該地址不會變化,設置後將無需每天重覆修改地址,同時提高帶寬速度。

配置固定tcp埠地址需要將cpolar升級到專業版套餐或以上

保留一個固定tcp地址

登錄cpolar官網後臺,點擊左側的預留,找到保留的tcp地址,我們來為遠程sqlserver保留一個固定的tcp地址:

地區:選擇China vip描述:即備註,可自定義
點擊保留
image

地址保留成功後,系統會生成相應的固定公網地址,將其複製下來

image
配置固定tcp地址
在瀏覽器上登錄cpolar web UI管理界面,Linux區域網ip地址+:9200埠。
點擊左側儀錶盤的隧道管理——隧道列表,找到我們上面創建的遠程sqlserver隧道,點擊右側的編輯
image
修改隧道信息,將保留成功的固定tcp地址配置到隧道中
埠類型:修改為固定tcp埠預留的tcp地址:填寫官網保留成功的地址
點擊更新
image
隧道更新成功後,點擊左側儀錶盤的狀態——線上隧道列表,可以看到公網地址已經更新成為了固定tcp地址。
image

7.使用固定公網地址連接

打開navicat連接工具,輸入官網保留的固定tcp地址,點擊測試連接,提示連接成功。

需要註意,公網地址後面埠的冒號(:)需改為逗號(,)

image
現在這個公網地址不會再隨機變化了,只要保持隧道正常線上,我們在外就可以通過這個固定公網地址來遠程連接區域網的sqlserver資料庫。

本篇博客參考轉載自:https://www.jb51.net/database/3113664ri.htm


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 機緣 電腦信息技術的需要持續學習的興趣和熱情。大學學習電腦編程開發即使是短暫,不會太漫長。大學一年級對於信息科學技術的興趣只增不減。一個剛步入大學校園的高中畢業生,對於將來發生的任何事情都是十分憧憬和好奇。大學的圖書館和自習室經常都會有不同系學生的光顧。高中趕鴨子上架,大學很輕鬆,人很多。 南方 ...
  • 人工智慧artificial intelligence 是電腦互聯網信息技術多年積累和不同互聯網公司共同構造的產物。人工智慧和大數據領域聯繫很大。每個軟體公司都有公司的業務數據和目標客戶。中央倉庫和私有倉庫保存著公有數據和私有數據。Java應用開發中的Maven是對實體本地jar包的一種互聯網分佈 ...
  • 正文 忽然想起,昨天有一個財政局的工作人員,過來轉款。那時候已經快下班了。我們給他辦完之後,他說他沒想到這麼快。看來還得回去,明明都打算不回去了來著。 我有些疑惑。照理來說,財政局應該挺好玩。我這麼問他。他苦笑了一下,說要是好玩就回去上班了,天天都不想去單位。然後開始感慨我們的銀行工作好。 我實在沒 ...
  • 大家好,我是風箏 個人博客:【古時的風箏】。 本文目的為個人學習記錄及知識分享。如果有什麼不正確、不嚴謹的地方請及時指正,不勝感激。 每一個贊都是我前進的動力。 公眾號:「古時的風箏」 前幾天順手改的一個安卓啟動器,開源沒幾天,沒想到GitHub上已經獲得了40多顆星,要知道我前段時間花 ...
  • 部署SpringBoot項目(通關版) 一、概述 使用 java -jar 命令直接部署項目的JAR包和使用Docker製作鏡像進行部署是兩種常見的部署方式。以下是對這兩種方式的概述和簡要的優劣勢分析: 1.1、使用 java -jar 命令直接部署項目的JAR包 概述: 通過 java -jar ...
  • 在 Python 中,字元串格式化是將變數插入到字元串中的一種方式,Python 提供了多種字元串格式化的方法,包括舊式的 % 格式化、新式的 str.format 方法以及 f-string(格式化字元串字面量)。 ...
  • 一:背景 1. 講故事 前些天在看 AOT的時候關註了下 源生成器,挺有意思的一個東西,今天寫一篇文章簡單的分享下。 二:源生成器探究之旅 1. 源生成器是什麼 簡單來說,源生成器是Roslyn編譯器給程式員開的一道口子,在這個口子里可以塞入一些自定義的cs代碼,讓Roslyn編譯器在編譯代碼的時候 ...
  • 一、依賴註入相關知識 1.1、依賴註入的原理和優點 依賴註入(DI),是IOC控制反轉思想 的實現。由一個DI容器,去統一管理所有的服務生命周期,服務的創建、銷毀、獲取,都是由DI容器去處理的。 依賴註入,很大程度解耦了服務之間的依賴關係,服務之間依賴的是抽象(依賴的是 服務/服務介面 的 “類型” ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...