Centos7源碼方式安裝sqle及開發相關

官方文檔-源碼安裝

操作系統:centos:7.9,everything (DVD版應該也可以) (在ubuntu22.04裝了兩天之后乖乖開了一個新Centos7虛擬機)
鏡像:清華大學開源軟件鏡像站 centos/7.9.2009

安裝git

sudo yum update -y
sudo yum install -y git
git --version

安裝docker

sudo yum install -y yum-utils \
device-mapper-persistent-data \
lvm2 --skip-brokensudo yum-config-manager \
--add-repo \
https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.reposudo sed -i 's/download.docker.com/mirrors.aliyun.com\/docker-ce/g' /etc/yum.repos.d/docker-ce.repo
sudo yum makecache fast
sudo yum install -y docker-cesudo mkdir -p /etc/docker
# 各大鏡像源停服后,當前還能用的一些鏡像源
sudo tee /etc/docker/daemon.json <<EOF
{"registry-mirrors": ["https://hub.uuuadc.top","https://docker.anyhub.us.kg","https://dockerhub.jobcher.com","https://dockerhub.icu","https://docker.ckyl.me","https://docker.awsl9527.cn"]
}
EOF# 啟動
sudo systemctl start docker 
# 設置開機自啟動
sudo systemctl enable docker# 修改完daemon.json后使用下面兩個
sudo systemctl daemon-reload
sudo systemctl restart docker# 測試是否成功
docker -v

安裝和編譯sqle的前后端三個項目

ROOT=$PWD
# 不能直接在倉庫下zip,會缺少.git文件夾,這是必需的
git clone https://github.com/actiontech/sqle.git
git clone https://github.com/actiontech/dms.git
git clone https://github.com/actiontech/dms-ui.git# 編譯ui界面
docker run --rm -v $ROOT/dms-ui:/app -w /app gplane/pnpm:8.3.1 sh -c "git config --global --add safe.directory /app && pnpm config set registry https://registry.npm.taobao.org && pnpm install --no-frozen-lockfile && pnpm build"
rm -rf $ROOT/sqle/static && cp -r $ROOT/dms-ui/packages/base/dist $ROOT/sqle/static
# 編譯兩個后端
cd $PWD/dms
make docker_install
cp -r $PWD/dms/bin $PWD/sqle/bin
cd $PWD/sqle
# 必報錯,需要自己打包一個有較新版rpmbuild的鏡像
# 解決方案參考下面那個鏈接
make docker_rpm_with_dms

SQLE源碼安裝報錯:unable to find image ‘rpmbuild/centos7:latest‘ locally

打包

sqle-ce*.rpmsqle文件夾內

RPM=$(find . -type f -name "sqle-ce*.rpm")
rpm -ivh $RPM --prefix=/opt/sqle

啟動sqle服務前先部署Mysql

docker run -p 3306:3306 --name mysql --restart=always \
-e MYSQL\_ROOT\_PASSWORD=root \
-d mysql# 然后在db中執行下面兩行
# CREATE DATABASE IF NOT EXISTS sqle default character set utf8mb4 collate utf8mb4_unicode_ci;
# CREATE DATABASE IF NOT EXISTS dms default character set utf8mb4 collate utf8mb4_unicode_ci;

修改config.yaml

修改opt/sqle/etc/config.yaml,主要是修改訪問sqledms兩個數據庫的賬號密碼。注意數據庫IP不要用localhost,而要用192那種

也可以修改sqle/build/sqled_with_dms.specdms/config.yaml,他們最終拼接為config.yaml

啟動

cd /opt/sqle
chmod +x scripts/init_start.sh
./scripts/init_start.sh

后續修改源碼之后重新部署

rpm -e sqle*
systemctl stop dms
systemctl stop sqled
rm -rf /opt/sqleROOT=$PWDrm -rf $PWD/sqle/static && cp -r $PWD/dms-ui/packages/base/dist $PWD/sqle/static
cp -r $PWD/dms/bin $PWD/sqle/bin
cd $PWD/sqle
make docker_rpm_with_dmsRPM=$(find . -type f -name "sqle-ce*.rpm")
rpm -ivh $RPM --prefix=/opt/sqlesh /opt/sqle/scripts/init_start.sh

修改rule

在每次啟動時都會同步sqle/sqle/driver/mysql/rule/rule_list.go和數據庫rules
可以查看sqle/sqle/model/utils.goCreateRulesIfNotExist

二次開發需要

安裝golang

mkdir ~/env
cd ~/env
# go.mod中顯示go1.19
wget https://golang.org/dl/go1.19.13.linux-amd64.tar.gz
tar -zxvf go1.19.13.linux-amd64.tar.gzvim ~/.bashrc# 即剛剛解壓的壓縮包的文件夾
export GOROOT=~/env/go
# 你自己指定一個存第三方庫的文件夾
export GOPATH=~/env/gopath
export PATH=$PATH:$GOROOT/bin:$GOPATH/binsource  ~/.bashrc

設置mod模式和下載第三方庫的代理

go env -w GO111MODULE=on
go env -w GOPROXY="https://goproxy.cn,direct"

測試

go version
go env

yum安裝VSCode(不要試這個)

這個方法來自官方:RHEL, Fedora, and CentOS based distributions
會報下面的錯,解決方案是更新GLIBC,會影響系統的穩定性

錯誤:軟件包:code-1.90.2-1718751675.el8.x86_64 (code)需要:libc.so.6(GLIBC_2.28)(64bit)
sudo rpm --import https://packages.microsoft.com/keys/microsoft.ascsudo sh -c 'echo -e "[code]\nname=Visual Studio Code\nbaseurl=https://packages.microsoft.com/yumrepos/vscode\nenabled=1\ngpgcheck=1\ngpgkey=https://packages.microsoft.com/keys/microsoft.asc" > /etc/yum.repos.d/vscode.repo'yum check-updatesudo yum install code

建議RemoteSSH遠程連接服務器,并進行開發

我是在win11連接Centos7虛擬機
連接url為ssh root@192.168.88.138這種格式
結合下面的這個插件安裝方式,即使遠程連接也能代碼補全
在這里插入圖片描述
等待相關工具下完后就行了
在這里插入圖片描述
懸停能出現文檔了
在這里插入圖片描述

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/36702.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/36702.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/36702.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

數據結構與算法筆記:高級篇 - B+樹:MySql數據庫索引是如何實現的?

概述 作為一名軟件開發工程師&#xff0c;你對數據庫肯定再熟悉不過了。MySQL 作為主流的數據庫存儲系統&#xff0c;它在我們的業務開發中&#xff0c;有著舉足輕重的地位。在工作中&#xff0c;為了加速數據庫中數據的查找速度&#xff0c;我們常用的處理思路是&#xff0c;…

01.Ambari自定義服務開發-項目初始化

文章目錄 基礎環境在PyCharm中初始化項目配置項目相關依賴在PyCharm中導入依賴 基礎環境 PyCharmPython 2.7已經安裝完成的Ambari服務端 在PyCharm中初始化項目 項目名稱就是我們要安裝服務的名稱&#xff0c;要求名稱為全大寫&#xff0c;如&#xff1a;DORIS創建Python2.7…

如何實現機房的自動化運維-青島佰優聯

要讓機房更穩定地實現自動化運維&#xff0c;可以參考以下幾點建議&#xff1a; 一、實施自動化運維工具和技術 1. 配置管理工具&#xff1a; - 使用如Ansible、Puppet、Chef等開源的自動化運維工具&#xff0c;進行服務器配置的管理。這些工具可以幫助管理員快速部署、更…

龍迅LT8711V TYPE-CDP 1.2轉VGA芯片,內置MCU,成熟批量產品

龍迅LT8711V描述&#xff1a; LT8711V是一種高性能的Type-C/DP1.2到VGA轉換器&#xff0c;設計用于連接USB Type-C源或DP1.2源到VGA接收器。LT8711V集成了一個DP1.2兼容的接收器&#xff0c;和一個高速三通道視頻DAC。此外&#xff0c;還包括兩個CC控制器&#xff0c;用于CC通…

XML selectNodes 模糊查找

public static XmlElement[] FuzzyFindNode(string xmlPath, string key, string valuenull){XmlDocument xmlDoc new XmlDocument();xmlDoc.Load(xmlPath); string xpath $"//節點名字[contains({key},{value})]"; XmlNodeList nodes xmlDoc.SelectNodes(xpath)…

圖像大小調整(縮放)

尺寸調整前尺寸調整前 1、背景介紹 在深度學習中&#xff0c;將圖像調整到固定尺寸&#xff08;如28x28像素&#xff09;的操作是非常常見的&#xff0c;尤其是在處理諸如圖像分類、物體檢測和圖像分割等任務時。這種操作有幾個重要原因&#xff1a; 標準化輸入&#xff1a;許…

【可控圖像生成系列論文(五)】ControlNet 和 IP-Adapter 之間的區別有哪些?

系列文章目錄 【可控圖像生成系列論文&#xff08;一&#xff09;】 簡要介紹了 MimicBrush 的整體流程和方法&#xff1b;【可控圖像生成系列論文&#xff08;二&#xff09;】 就MimicBrush 的具體模型結構、訓練數據和紋理遷移進行了更詳細的介紹。【可控圖像生成系列論文&…

【漏洞復現】銳捷統一上網行為管理與審計系統——遠程命令執行漏洞

聲明&#xff1a;本文檔或演示材料僅供教育和教學目的使用&#xff0c;任何個人或組織使用本文檔中的信息進行非法活動&#xff0c;均與本文檔的作者或發布者無關。 文章目錄 漏洞描述漏洞復現測試工具 漏洞描述 銳捷統一上網行為管理與審計系統naborTable/static_convert.php…

如何應對瀏覽器提示的“存在不安全腳本”問題

哈嘍呀&#xff0c;大家好&#xff0c;淼淼又來和大家見面啦&#xff0c;咱們在互聯網瀏覽過程中&#xff0c;您或許會遇到瀏覽器彈出的安全警告&#xff0c;提示頁面中包含“不安全腳本”。這樣的信息往往讓人心生警惕&#xff0c;擔心自己的隱私和數據安全受到威脅。本文將為…

Linux系統編程(七)進程間通信IPC

進程間通訊的7種方式_進程間通信的幾種方法-CSDN博客 管道 pipe&#xff08;命名管道和匿名管道&#xff09;&#xff1b;信號 signal&#xff1b;共享內存&#xff1b;消息隊列&#xff1b;信號量 semaphore&#xff1b;套接字 socket&#xff1b; 1. 管道 內核提供&#x…

Hive基礎知識(二十三):數據傾斜優化

絕大部分任務都很快完成&#xff0c;只有一個或者少數幾個任務執行的很慢甚至最終執行失敗&#xff0c; 這樣的現象為數據傾斜現象。 一定要和數據過量導致的現象區分開&#xff0c;數據過量的表現為所有任務都執行的很慢&#xff0c;這個 時候只有提高執行資源才可以優化 HQL…

Arduino平臺軟硬件原理及使用——SR04超聲波傳感器的使用

文章目錄&#xff1a; 一、超聲波傳感器工作原理 二、SR04超聲波庫的使用 三、SR04超聲波傳感器在Arduino中的使用 一、超聲波傳感器工作原理 如上圖所示&#xff1a;HCSR04超聲波傳感器擁有4個針腳&#xff0c;除了VCC接正極、GND接負極外&#xff0c;還有兩個引腳“Trig”及“…

Linux線程互斥鎖

目錄 &#x1f6a9;看現象&#xff0c;說原因 &#x1f6a9;解決方案 &#x1f6a9;互斥鎖 &#x1f680;關于互斥鎖的理解 &#x1f680;關于原子性的理解 &#x1f680;如何理解加鎖和解鎖是原子的 &#x1f6a9;對互斥鎖的簡單封裝 引言 大家有任何疑問&#xff0c;可…

【Android面試八股文】如何實現Activity窗口快速變暗

文章目錄 方式一:修改 WindowManager.LayoutParams 的screenBrightness屬性動態調整窗口的亮度方式二:使用 `WindowManager.LayoutParams` 的 `alpha` 屬性結合 `ValueAnimator` 來實現窗口漸變變暗的效果方式三:使用遮罩層在Android中實現Activity窗口快速變暗有幾種方法,…

CCSP自考攻略+經驗總結

備考攻略 備考攻略準備階段通讀階段精度階段總復習階段刷題階段命運審判 寫到最后 備考攻略 趁著對ssp知識點的理解還在&#xff0c;開始ccsp的考證之路&#xff0c;文章結構還是按照cissp備考篇的結構梳理。本次備考和cissp的離職在家備考不同&#xff0c;ccsp是在職利用非工…

如何用亞馬遜合作伙伴網絡快速上線跨境電商

目前跨境電商已成為行業發展主流&#xff0c;如何快速、低成本打造品牌海外獨立站和智能客服營銷中心、構建全鏈路跨境電商體系是出海電商商家都會遇到的難題。亞馬遜云科技憑借與亞馬遜電商平臺易于集成的先天優勢成為首選的電商解決方案平臺。本文介紹了如何用亞馬遜云科技平…

Elasticsearch8.x聚合查詢全面指南:從理論到實戰

聚合查詢的概念 聚合查詢&#xff08;Aggregation Queries&#xff09;是Elasticsearch中用于數據匯總和分析的查詢類型。它不同于普通的查詢&#xff0c;而是用于執行各種聚合操作&#xff0c;如計數、求和、平均值、最小值、最大值、分組等。 聚合查詢的分類 分桶聚合&…

centos7 安裝單機MongoDB

centos7安裝單機 yum 安裝 1、配置yum源 vim /etc/yum.repos.d/mongodb.repo [mongodb-org-7.0] nameMongoDB Repository baseurlhttps://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/7.0/x86_64/ gpgcheck1 enabled1 gpgkeyhttps://www.mongodb.org/static/pgp…

【監控】3.配置 Grafana 以使用 Prometheus 數據源

1 訪問 Grafana 打開瀏覽器&#xff0c;訪問 http://localhost:3000&#xff08;默認端口&#xff09;。使用默認的用戶名和密碼 admin/admin 登錄。 2 添加 Prometheus 數據源 進入 Grafana 儀表板&#xff0c;點擊左側菜單中的“Configuration” -> “Data Sources”。…

未來已來,如何打造智慧養殖場?

近年來&#xff0c;國家出臺了一系列扶持政策&#xff0c;以促進養殖行業高質量發展&#xff0c;推動行業轉型升級。在國家政策和市場需求的雙重驅動下&#xff0c;養殖行業正迎來前所未有的發展機遇。智慧養殖以其高效、智能和可持續的特點&#xff0c;正逐步取代傳統養殖方式…