openGauss開源資料庫二次開發指導手冊(下)

語言: CN / TW / HK

本節內容主要介紹編譯和驗證二次開發結果。

編譯

編譯環境要求

作業系統環境要求

作業系統環境要求如下表。

CPU 作業系統要求
X86架構 CentOS 7.6,openEuler 20.3LTS
ARM架構 openEuler 20.3LTS, 麒麟V10

下文章節中以使用華為雲ECS服務的鯤鵬伺服器(ARM架構+ openEuler作業系統)為例進行介紹。
您也可以自行選擇在本地PC機安裝虛擬機器進行操作(X86架構),詳細步驟可參考《在虛擬機器+CentOS上安裝部署openGauss資料庫指導手冊》或《在虛擬機器+openEuler上安裝部署openGauss資料庫指導手冊》。

軟體依賴要求

openGauss的軟體依賴要求如下表所示:

所需軟體 建議版本
libaio-devel 建議版本:0.3.109-13
flex 要求版本:2.5.31 以上
bison 建議版本:2.7-4
ncurses-devel 建議版本:5.9-13.20130511
Glibc-devel 建議版本:2.17-111
patch 建議版本:2.7.1-10
readline-devel 建議版本:7.0-13
python3-devel 建議版本:3
pam-devel 建議版本:1.1.8-1.3.1
libffi-devel 建議版本:3.1
automake 建議版本:1.13.4
byacc 建議版本:1.9
cmake 建議版本:3.19.2
openssl-devel 建議版本:1.1.1
libtool-devel 建議版本:2.4.2及以上
lsb_release 建議版本:4.1

安裝命令:

yum install -y autoconf gcc gcc-c++ libaio-devel flex bison ncurses-devel glibc-devel patch readline readline-devel dkms python3-devel pam-devel libffi-devel automake byacc cmake openssl-devel libtool-devel

編譯環境準備(使用代金券購買華為雲ECS服務)

登入華為雲

步驟 1進入華為雲官網。
華為雲官網:http://www.huaweicloud.com/,進入華為雲官網,點選登入。
在這裡插入圖片描述
步驟 2輸入賬號名和密碼,點選登入。
在這裡插入圖片描述
如果還沒有註冊,點選免費註冊,按步驟進行註冊與實名制認證後進行登入。

  • 說明:
    請進行實名制認證後再執行下述操作。

購買彈性雲伺服器ECS

步驟 1在華為雲主頁(http://www.huaweicloud.com/)點選產品,選擇基礎服務,再選擇彈性雲伺服器ECS。
在這裡插入圖片描述
步驟 2進入彈性雲伺服器ECS購買介面。
在這裡插入圖片描述
在這裡插入圖片描述

步驟 3自定義購買進行基礎配置。

配置選項 配置值
計費模式 按需計費(一定要選按需計費,注意配置費用)
區域 華北-北京四(推薦,其他區域可能會導致無法選擇openEuler公共映象)
CPU架構 鯤鵬計算
規格 鯤鵬通用計算增強型 8vCPUs
映象 公共映象:openEuler openEuler 20.03 64bit with ARM(40GB)

在這裡插入圖片描述
其餘預設即可,點選下一步網路配置。
步驟 4自定義購買進行網路配置。

配置選項 配置值
網路 Vpc-default(192.168.0.0/16)(選現有預設網路即可)
彈性公網IP 現在購買
公網頻寬 按流量計費
頻寬大小 5

在這裡插入圖片描述
其餘預設即可,點選下一步高階配置。
步驟 5自定義購買進行高階配置。
在這裡插入圖片描述
記住使用者名稱為root,然後輸入自定義密碼和確認密碼,其餘預設即可,點選下一步確認設定。

步驟 6確認配置購買成功。
在這裡插入圖片描述
確認設定資訊,尤其是配置費用,然後勾選協議“我已經閱讀並同意《華為映象免責宣告》”,點選立即購買。
在這裡插入圖片描述
檢視雲伺服器列表。
在這裡插入圖片描述
等待幾分鐘後,狀態為“執行中“則表示購買成功!
注意:本次購買鯤鵬伺服器價格為公測價格,具體價格以華為雲官網為準。

版本編譯

openGauss的編譯過程和生成安裝包的過程已有一個一鍵式的指令碼build.sh,可以方便地通過build.sh指令碼進行編譯操作;
本節介紹openGauss使用一鍵式指令碼編譯的操作步驟,編譯流程如下圖所示:
在這裡插入圖片描述

程式碼下載

步驟 1登入購買的ECS例項。
在彈性雲服務列表上,單擊伺服器後面的“遠端登入“操作,以root使用者登入至伺服器。
在這裡插入圖片描述
步驟 2在linux環境下安裝軟體依賴包。

[[email protected] ~]# yum install -y autoconf gcc gcc-c++ libaio-devel flex bison ncurses-devel glibc-devel patch readline readline-devel dkms python3-devel pam-devel libffi-devel automake byacc cmake openssl-devel libtool-devel

步驟 3在linux環境下安裝Git工具並配置Git環境。

[[email protected] ~]# yum install git -y    ---安裝git工具
[[email protected] ~]# git config --global user.name "Your Name"          --- 配置git使用者名稱
[[email protected] ~]# git config --global user.email "[email protected]"  --- 配置git全域性郵件賬號

Your Name為自己的git使用者名稱,請替換為實際自己實際使用者名稱。
[email protected]為註冊Gitee的主郵箱,請替換為實際自己實際主郵箱。
生成git公鑰和私鑰。

[[email protected] ~]# ssh-keygen -t rsa -C "[email protected]"         --- 生成git公鑰和私鑰

[email protected]為註冊Gitee的主郵箱,請替換為實際自己實際主郵箱。
執行結果如下:
在這裡插入圖片描述
/root/.ssh/id_rsa.pub 為生成的git公鑰檔案,讀取該檔案內容。
在這裡插入圖片描述
複製出上面檔案內容,並在個人Gitee賬戶中新增此SSH公鑰。
在這裡插入圖片描述
步驟 4用Git工具下載openGauss-server和openGauss-OM程式碼。
先建立原生代碼倉庫存放目錄/openGauss-lab/soft。

[[email protected] ~]# mkdir -p /openGauss-lab/soft
[[email protected] ~]# cd /openGauss-lab/soft
[[email protected] soft]#

openGauss-server是server程式碼倉庫,openGauss-OM是工具程式碼倉庫,兩者均用於後續安裝openGauss。

# git clone [git ssh address] openGauss-server  ##下載個人server程式碼倉庫
# git clone [git ssh address] openGauss-OM    ##下載個人OM程式碼倉庫

上述命令中:
[git ssh address]表示實際程式碼下載地址,即個人庫地址,可在openGauss社群獲取。
個人server程式碼倉庫地址:
在這裡插入圖片描述
個人OM程式碼倉庫地址:
在這裡插入圖片描述
執行下載結果如下:
在這裡插入圖片描述
步驟 5獲取已編譯好的第三方二進位制程式碼。
該二進位制檔案用於openGauss-server程式碼的編譯。

[[email protected] soft]# wget http://opengauss.obs.cn-south-1.myhuaweicloud.com/1.1.0/openGauss-third_party_binarylibs.tar.gz

下載項進度均顯示為100%時表示下載成功,具體如下:
在這裡插入圖片描述
解壓並移動該二進位制檔案。

[[email protected] soft]# tar -zxf openGauss-third_party_binarylibs.tar.gz    ----數分鐘後解壓成功
[[email protected] soft]# mv openGauss-third_party_binarylibs binarylibs

軟體安裝編譯

前提條件

  • 已按照搭建編譯環境的要求準備好相關軟硬體,並且已經下載了程式碼;
  • 瞭解 build.sh指令碼的引數選項和功能;
  • 程式碼環境乾淨,沒有以前編譯生成的檔案。

編譯openGauss-server

步驟 1執行如下命令進入到軟體程式碼編譯指令碼目錄。

[[email protected] soft]# cd /openGauss-lab/soft/openGauss-server

步驟 2執行如下命令,編譯安裝openGauss。

[[email protected] openGauss-server] # sh build.sh -m release -3rd /openGauss-lab/soft/binarylibs -pkg

該步驟執行大概需要15-30分鐘,與主機規格有關,請耐心等待。
步驟 3顯示如下內容,表示安裝包編譯成功。

…………………………………….
make server(all) package success!
packaging libpq...
success!
packaging tools...
success!
Begin to install upgrade_sql files...
Successfully packaged upgrade_sql files.
End package opengauss.
now, all packages has finished!

生成的安裝包存放在“/openGauss-lab/soft/openGauss-server/output”目錄下,編譯結果:
openGauss-1.1.0-openEuler-64bit-Libpq.tar.gz
openGauss-1.1.0-openEuler-64bit.sha256
openGauss-1.1.0-openEuler-64bit-symbol.tar.gz
openGauss-1.1.0-openEuler-64bit.tar.bz2 -----此包大概有89M
openGauss-1.1.0-openEuler-64bit-toosl.tar.gz
upgrade_sql.sha256
upgrade_sql.tar.gz

[[email protected] openGauss-server]# cd /openGauss-lab/soft/openGauss-server/output
[[email protected] output]# ll
total 334M
-rw------- 1 root root  12M Apr 20 15:28 openGauss-2.0.0-openEuler-64bit-Libpq.tar.gz
-rw------- 1 root root   65 Apr 20 15:28 openGauss-2.0.0-openEuler-64bit.sha256

如下圖:
在這裡插入圖片描述
編譯日誌為“./build/script/makemppdb_pkg.log”,安裝包打包日誌為“./build/script/make_package.log”。

編譯openGauss-OM

安裝openGauss時需要OM工具,因此需要編譯openGauss-OM。
步驟 1執行如下命令進入到軟體程式碼編譯指令碼目錄。

[[email protected] soft]# cd /openGauss-lab/soft/openGauss-OM

步驟 2執行如下命令,編譯安裝OM。

[[email protected] openGauss-OM] # sh build.sh -3rd /openGauss-lab/soft/binarylibs

步驟 3顯示如下內容,表示安裝包編譯成功。

Everything is ready
success!

編譯結果路徑:/openGauss-lab/soft/openGauss-OM/package/。
編譯結果:
openGauss-1.1.0-openEuler-64bit-om.tar.gz
openGauss-1.1.0-openEuler-64bit-om.sha256

[[email protected] openGauss-OM]# cd /openGauss-lab/soft/openGauss-OM/package/
[[email protected] package]# ll
total 17M
-rw------- 1 root root  65 Apr 16 16:27 openGauss-2.0.0-openEuler-64bit-om.sha256
-rw------- 1 root root 17M Apr 16 16:27 openGauss-2.0.0-openEuler-64bit-om.tar.gz

在這裡插入圖片描述

驗證二次開發結果

安裝編譯後的openGauss安裝包

修改作業系統配置

為了操作方便,也可以使用SSH工具(比如:PuTTY等)從本地電腦通過配置彈性雲伺服器的彈性公網IP地址(如:124.70.36.251)來連線ECS,並使用ROOT使用者來登入。
在這裡插入圖片描述

設定字符集引數

將各資料庫節點的字符集設定為相同的字符集,可以在/etc/profile檔案中新增"export LANG=XXX"(XXX為Unicode編碼)。

步驟 1 在/etc/profile檔案中新增"export LANG= en_US.UTF‐8"

[[email protected] ~]# cat >>/etc/profile<<EOF
export LANG=en_US.UTF‐8
EOF

步驟 2 輸入如下命令,使修改生效。

[[email protected] ~]# source /etc/profile

修改python版本

之後安裝過程中openGauss使用者互信,openEuler伺服器需要用到Python-3.7.x命令,但是預設Python版本為Python-2.7.x,所以需要切換Python版本。
步驟 1進入/usr/bin檔案,備份python檔案。

[[email protected] ~]# cd /usr/bin

備份python檔案。

[[email protected] bin] # mv python python.bak 

步驟 2建立python3軟連線。

[[email protected] bin] # ln -s python3 /usr/bin/python 

步驟 3驗證python版本。

[[email protected] bin] # python -V 

顯示如下,說明切換成功:

Python 3.7.4

規劃資料庫安裝包目錄

步驟 1 登入ECS,規劃存放安裝包的目錄並建立,並將內容設定為當前使用者可讀可執行。

[[email protected] bin]# mkdir -p /opt/software/openGauss
[[email protected] bin]# chmod 755 -R /opt/software

注:

  • 不建議把安裝包的存放目錄規劃到openGauss使用者的家目錄或其子目錄下,可能導致許可權問題。
  • openGauss使用者須具有/opt/software/openGauss目錄的讀寫許可權。

步驟 2 將資料庫安裝包放置到規劃目錄下。

[[email protected] bin]# cp /openGauss-lab/soft/openGauss-server/output/* /opt/software/openGauss
[[email protected] bin]# cp /openGauss-lab/soft/openGauss-OM/package/* /opt/software/openGauss

說明:/openGauss-lab/soft/openGauss-server /output 路徑是編譯openGauss-server後安裝包的預設存放路徑;
/openGauss-lab/soft/openGauss-OM/package是編譯openGauss-OM後安裝包的預設存放路徑。

建立XML配置檔案

  • 安裝openGauss前需要建立XML檔案。XML檔案包含部署openGauss的伺服器資訊、安裝路徑、IP地址以及埠號等。用於告知openGauss如何部署。使用者需根據不同場合配置對應的XML檔案。
  • 以單節點配置的方案為例,說明如何建立XML配置檔案。
    步驟 1 以root使用者登入待安裝openGauss的主機,切換到存放安裝包的目錄。
[[email protected] bin]# cd /opt/software/openGauss

步驟 2 建立XML配置檔案,用於資料庫安裝。

[[email protected] openGauss]# vi clusterconfig.xml

輸入”i”進入INSERT模式,新增文字如下,加粗字型內容為示例,可自行替換。其中“ecs-5045”是彈性雲伺服器的名稱,“192.168.0.58”為彈性雲伺服器的IP地址(私有),其他value值可以不進行修改。

<?xml version="1.0" encoding="UTF-8"?> 
<ROOT> 
    <CLUSTER> 
        <PARAM name="clusterName" value="dbCluster" /> 
        <PARAM name="nodeNames" value="ecs-5045" /> 
        <PARAM name="backIp1s" value="192.168.0.58"/> 
        <PARAM name="gaussdbAppPath" value="/opt/gaussdb/app" /> 
        <PARAM name="gaussdbLogPath" value="/var/log/gaussdb" /> 
        <PARAM name="gaussdbToolPath" value="/opt/huawei/wisequery" /> 
        <PARAM name="corePath" value="/opt/opengauss/corefile"/> 
        <PARAM name="clusterType" value="single-inst"/> 
    </CLUSTER> 
   
    <DEVICELIST> 
        
        <DEVICE sn="1000001"> 
            <PARAM name="name" value="ecs-5045"/> 
            <PARAM name="azName" value="AZ1"/> 
            <PARAM name="azPriority" value="1"/> 
            <PARAM name="backIp1" value="192.168.0.58"/> 
            <PARAM name="sshIp1" value="192.168.0.58"/> 
             
	    <!--dbnode--> 
	    <PARAM name="dataNum" value="1"/> 
	    <PARAM name="dataPortBase" value="26000"/> 
	    <PARAM name="dataNode1" value="/gaussdb/data/db1"/> 
        </DEVICE> 
    </DEVICELIST> 
</ROOT>

彈性雲伺服器名稱及私有IP檢視:
在這裡插入圖片描述
步驟 4點選“ESC”退出INSERT模式,然後輸入“:wq”後回車退出編輯並儲存文字。

表5-1配置檔案引數附加說明
在這裡插入圖片描述
須知:

  • “/opt/huawei/newsql/tools”存放互信等工具,避免許可權問題,不要把例項資料目錄放在此目錄下;
  • 安裝目錄和資料目錄需為空或者不存在,否則可能導致安裝失敗;
  • 在對資料庫節點的例項進行具體配置時,需確保配置的目錄之間不相互耦合。即各個配置目錄不關聯,刪除其中任意一個目錄,不會級聯刪除其它目錄。如gaussdbAppPath為"/opt/gaussdb/app",gaussdbLogPath為"/opt/gaussdb/app/omm"。當gaussdbAppPath目錄被刪除時,會級聯刪除gaussdbLogPath目錄,從而引起其它問題;
  • 若需要安裝指令碼自動建立安裝使用者時各配置的目錄需保證不與系統建立的預設使用者目錄耦合關聯;
  • 配置openGauss路徑和例項路徑時,路徑中不能包含"|",";","&","$","<",">","`","\","’",""","{","}","(",")","[","]","~","*","?"特殊字元。

初始化安裝環境

為了保證openGauss的正確安裝,請首先對主機環境進行配置。

準備安裝使用者及環境

建立完openGauss配置檔案後,在執行安裝前,為了後續能以最小許可權進行安裝及openGauss管理操作,保證系統安全性,需要執行安裝前置指令碼gs_preinstall準備好安裝使用者及環境。

前提條件

已完成安裝準備的所有任務。

注意事項

  • 使用者需要檢查上層目錄許可權,保證安裝使用者對安裝包和配置檔案目錄讀寫執行的許可權;
  • xml檔案中主機的名稱與IP對映配置正確;
  • 只能使用root使用者執行gs_preinstall命令。

操作步驟

步驟 1修改performance.sh檔案。
使用vi開啟檔案“/etc/profile.d/performance.sh”,具體如下:

[[email protected] openGauss]# vi /etc/profile.d/performance.sh

輸入”i”,進入INSERT模式。用#註釋sysctl -w vm.min_free_kbytes=112640 &> /dev/null這行。

CPUNO=`cat /proc/cpuinfo|grep processor|wc -l`
export GOMP_CPU_AFFINITY=0-$[CPUNO - 1]

#sysctl -w vm.min_free_kbytes=112640 &> /dev/null
sysctl -w vm.dirty_ratio=60 &> /dev/null
sysctl -w kernel.sched_autogroup_enabled=0 &> /dev/null
          

點選“ESC”退出INSERT模式。輸入“:wq”後回車,儲存退出。
步驟 2 為確保openssl版本正確,執行預安裝前載入安裝包中lib庫。
執行命令如下。

[[email protected] openGauss]# vi /etc/profile

輸入i,進入INSERT模式,在檔案的底部新增如下程式碼,載入安裝包中lib庫,其中packagePath為使用者安裝包放置的路徑,本示例中為/opt/software/openGauss。按下“Esc”退出INSERT模式,輸入”:wq”後回車,儲存後退出。

export packagePath=/opt/software/openGauss
export LD_LIBRARY_PATH=$packagePath/script/gspylib/clib:$LD_LIBRARY_PATH

配置完成後,輸入如下命令,使設定生效。

[[email protected] openGauss]# source /etc/profile

步驟 3 在安裝包所在的目錄下,解壓安裝包。
執行以下命令進入安裝包目錄。

[[email protected] openGauss]# cd /opt/software/openGauss

解壓openGauss-1.1.0-openEuler-64bit-om.tar.gz包。

[[email protected] openGauss]# tar -zxvf openGauss-2.0.0-openEuler-64bit-om.tar.gz

解壓後,用ls命令檢視如下。

[[email protected] openGauss]# ls
clusterconfig.xml                             
openGauss-2.0.0-openEuler-64bit-om.sha256  
openGauss-2.0.0-openEuler-64bit-symbol.tar.gz  script  pgrade_sql.tar.gz                                              
openGauss-2.0.0-openEuler-64bit-om.tar.gz  
openGauss-2.0.0-openEuler-64bit.tar.bz2        simpleInstall       version.cfg
openGauss-2.0.0-openEuler-64bit-Libpq.tar.gz  openGauss-2.0.0-openEuler-64bit.sha256     openGauss-2.0.0-openEuler-64bit-tools.tar.gz   upgrade_sql.sha256

安裝包解壓後,會在/opt/software/openGauss路徑下自動生成script子目錄,並且在script目錄下生成gs_preinstall等各種OM工具指令碼。
步驟 4 使用gs_preinstall準備好安裝環境,切換到gs_preinstall命令所在目錄。

[[email protected] openGauss]# cd /opt/software/openGauss/script/

script中內容顯示如下:

[[email protected] script]# ls
gs_backup   gs_checkperf  gs_om             gspylib      gs_uninstall   __init__.py
gs_check    gs_collector  gs_postuninstall  gs_ssh       gs_upgradectl  killall
gs_checkos  gs_install    gs_preinstall     gs_sshexkey  impl           local

步驟 5 採用互動模式執行,並在執行過程中會建立root使用者互信和openGauss使用者互信:

[[email protected] script]# python gs_preinstall -U omm -G dbgrp -X /opt/software/openGauss/clusterconfig.xml

這裡的omm為作業系統使用者(注:同時omm也是openGauss的資料庫管理員賬號,在下面的5.1.5 環節中會建立),dbgrp為執行openGauss的作業系統使用者的群組名稱,/opt/software/openGauss/clusterconfig.xml為openGauss配置檔案路徑。在執行過程中,使用者根據提示選擇是否建立互信,並輸入root使用者或openGauss使用者的密碼。
對root建立trust,輸入root的密碼,購買彈性服務雲時自定義的密碼。

Are you sure you want to create trust for root (yes/no)? yes
Please enter password for root.
Password: --說明:此處輸入密碼時,螢幕上不會有任何反饋,不用擔心,這是LINUX作業系統對密碼的保護.
Creating SSH trust for the root permission user.

建立作業系統omm使用者,並對omm建立trust,並設定密碼,設定為[email protected](建議使用者自定義設定密碼)。

Are you sure you want to create the user[omm] and create trust for it (yes/no)? yes
Please enter password for cluster user.
Password: --說明:此處輸入密碼時,螢幕上不會有任何反饋,不用擔心,這是LINUX作業系統對密碼的保護.
Please enter password for cluster user again.
Password: --說明:此處輸入密碼時,螢幕上不會有任何反饋,不用擔心,這是LINUX作業系統對密碼的保護.
Successfully created [omm] user on all nodes.

成功後顯示為:

……
Setting finish flag.
Successfully set finish flag.
Preinstallation succeeded.

執行安裝

按上述步驟準備好openGauss安裝環境之後,按照啟動安裝過程部署openGauss。

前提條件

  • 已成功執行前置指令碼gs_preinstall;
  • 伺服器作業系統和網路均正常執行。

操作步驟

步驟 1改檔案許可權。

[[email protected] script]# chmod -R 755/opt/software/openGauss/script 

步驟 2登入到openGauss的主機,並切換到omm使用者。

[[email protected] script]# su - omm

注:

  • omm指的是前置指令碼gs_preinstall中-U引數指定的使用者。
  • 安裝指令碼gs_install必須以前置指令碼中指定的omm執行,否則,指令碼執行會報錯。

步驟 3使用gs_install安裝openGauss。
執行以下命令進行安裝:

gs_install -X /opt/software/openGauss/clusterconfig.xml --gsinit-parameter="--encoding=UTF8"  --dn-guc="max_process_memory=3GB"  --dn-guc="shared_buffers=256MB" --dn-guc="bulk_write_ring_size=256MB" --dn-guc="cstore_buffers=16MB"

具體如下:

[[email protected] ~]$ gs_install -X /opt/software/openGauss/clusterconfig.xml --gsinit-parameter="--encoding=UTF8"  --dn-guc="max_process_memory=3GB"  --dn-guc="shared_buffers=256MB" --dn-guc="bulk_write_ring_size=256MB" --dn-guc="cstore_buffers=16MB"

/opt/software/ openGauss/clusterconfig.xml為openGauss配置檔案的路徑。在執行過程中,使用者需根據提示輸入資料庫管理員omm使用者的密碼,密碼具有一定的複雜度,為保證使用者正常使用該資料庫,請記住輸入的密碼。
按照設定密碼要求,比如設定密碼為[email protected](建議使用者自定義設定密碼):

encrypt cipher and rand files for database.
Please enter password for database:       --說明:此處輸入密碼時,螢幕上不會有任何反饋
Please repeat for database:               --說明:此處輸入密碼時,螢幕上不會有任何反饋
begin to create CA cert files

設定的密碼要符合複雜度要求:

  • 最少包含8個字元;
  • 不能和使用者名稱和當前密碼(ALTER)相同,或和當前密碼反序;
  • 至少包含大寫字母(A-Z),小寫字母(a-z),數字,非字母數字字元(限定為[email protected]#$%^&*()-_=+|[{}];:,<.>/?)四類字元中的三類字元。
    如果安裝成功,顯示如下:
……
Successfully deleted instances from all nodes.
Checking node configuration on all nodes.
Initializing instances on all nodes.
Updating instance configuration on all nodes.
Check consistence of memCheck and coresCheck on database nodes.
Configuring pg_hba on all nodes.
Configuration is completed.
Successfully started cluster.
Successfully installed application.
end deploy..

安裝生成的目錄

安裝後的目錄及各目錄下的檔案說明請參見下表。
在這裡插入圖片描述

登入資料庫驗證結果

步驟 1 在資料庫主節點伺服器上,如果當前不在omm使用者環境下,請如下命令切換至omm作業系統使用者環境(可選操作)。

[[email protected] script]# su - omm 

步驟 2啟動資料庫服務(可選操作,安裝完畢後預設啟動,如未啟動,請按此步驟啟動)。
啟動服務命令:

[[email protected] ~]$ gs_om -t start
Starting cluster.
=========================================
Successfully started.

檢視服務是否啟動:

[[email protected] ~]$ gs_om -t status
-----------------------------------------------------------------------
cluster_name    : dbCluster
cluster_state   : Normal
redistributing  : No
-----------------------------------------------------------------------

步驟 3連線資料庫。

[[email protected] ~]$ gsql -d postgres -p 26000 -r 

當結果顯示為如下資訊,則表示連線成功。

gsql ((openGauss 2.0.0 build 38463266) compiled at 2021-04-16 16:11:37 commit 0 last mr  )
Non-SSL connection (SSL connection is recommended when requiring high-security)
Type "help" for help. 
postgres=# 

其中,postgres為openGauss安裝完成後預設生成的資料庫。初始可以連線到此資料庫進行新資料庫的建立。26000為資料庫主節點的埠號,需根據openGauss的實際情況做替換,請確認連線資訊獲取。

  • 說明:
    gsql是openGauss資料庫提供的命令列方式的資料庫連線工具。

步驟 4 驗證第3 章中開發的gauss_hello函式是否新增成功。

postgres=# select gauss_hello('openGauss User');

成功顯示如下:

gauss_hello
----------------------------------------
Hello, openGauss User

本實驗結束。