openGauss常用的客戶端連線工具

語言: CN / TW / HK

openGauss資料庫自身支援gsql客戶端工具,可以通過此工具連線伺服器對其進行操作和維護,無需額外安裝。不過它需要在linux 命令列下執行,對一些新手執行時介面不夠友好。本篇介紹了openGauss常用的客戶端連線工具,即官方已適配的Data StudioDBeaver
在這裡插入圖片描述

 

目錄

  • 開啟資料庫監聽
  • 官方工具Data Studio
    • 介紹
    • 連線操作步驟
  • DBeaver
    • 安裝前準備
    • 安裝&連線配置
  • 容器環境

 

開啟資料庫監聽

先把 資料庫的監聽開啟,便於工具連線。
1.登入openGauss伺服器,找到postgresql.conf和pg_hba.conf所在目錄,即安裝openGauss時cluster_config.xml中dataNode所設定的值。

  • 極簡版 :/home/omm/data/single_node/
  • 企業版:/opt/huawei/install/data/dn

這兩個檔案很重要,為了防止改壞了,先找個地方給備份一下。例如,在檔案所在目錄執行

cp pg_hba.conf postgresql.conf /opt/wxx/

2.切換到omm使用者。修改postgresql.conf配置項ssl 為off,配置項ssl前面的#號要去掉。
在這裡插入圖片描述

3.openGauss預設只有127.0.0.1即localhost的埠監聽,修改postgresql.conf配置項listen_addresses。
從 listen_addresses = ‘localhost’ 修改為 listen_addresses = ‘localhost,10.22.33.44’ ,其中10.22.33.44 需要替換為openGauss所在節點實際IP。
注意, 配置項listen_addresses 前面的#要去掉,逗號為英文逗號。

:wq! 儲存退出。
此外,企業版openGauss也提供了命令可以直接修改,其中opengauss 替換為實際的資料庫名稱,10.22.33.44替換為實際的資料庫IP。

gs_guc reload -N opengauss -I all -c “listen_addresses=‘localhost,10.22.33.44’”

4.修改pg_hba.conf ,增加Data Studio所在Windows 機器的IP遠端訪問連線許可。新增一行然後儲存退出。

host all all 0.0.0.0/0 sha256
在這裡插入圖片描述

此外,企業版openGauss也提供了命令可以直接修改

gs_guc set -N all -I all -h "host all all 0.0.0.0/0 sha256"

5.重啟資料庫。

gs_om -t stop

停止成功後執行

gs_om -t start

啟動成功回顯啟動成功。

極簡版用下面命令重啟,斜體根據實際情況替換。

gs_ctl restart -D /home/omm/data/single_node/

6.(可選)在openGauss建立自己的使用者並賦予許可權,若已有可跳過本步驟。斜體項根據實際替換。

[omm@opengauss openGauss]$ gsql -d postgres -p 15400 
CREATE USER test PASSWORD 'Gauss_234'; 
GRANT ALL PRIVILEGES TO  test;

回顯CREATE ROLE表示建立使用者成功。
7.Java 版本要求1.8 及以上,可以使用Oracle原生或者Huawei JDK 。沒有的話需要裝一個,不然工具都用不成。
Windows cmd命令視窗中使用java -version 檢查java 版本

官方工具Data Studio

介紹

Data Studio 是一個整合開發環境( IDE ),幫助資料庫開發人員便捷地構建應用程式以圖形化介面形式提供資料庫關鍵特性。Data Studio 提供豐富多樣的特性,例如:建立和管理資料庫物件、執行 SQL 語句 指令碼、編輯和執行 PL/SQL 語句、圖形化檢視執行計劃和開銷和匯出表資料等。建立和管理資料庫物件包括: 資料庫、模式、函式、過程、表、序列、 索引、檢視、表空間、同義詞。而且已經在2022.3.20 華為已在Gitee上開源了該資料庫管理工具。
下面是我用Data Studio 連線openGauss的一點總結,安裝的openGauss版本是3.0.0企業單機版。
Data Studio系統要求:

  • CPU x86 64位
  • 可用記憶體 1GB,可用磁碟1G以上
  • 作業系統 Windows 7,Windows 10,Windows 2012/2016
  • 支援的openGauss版本:1.0.1及之後版本
  • JAVA 版本要求1.8 及以上,可以使用Oracle或者Huawei JDK 。

連線操作步驟

步驟 1下載連結直達:https://opengauss.obs.cn-south-1.myhuaweicloud.com/1.0.1/DataStudio_win_64.zip 。也可以把使用文件一併下載下來,方便遇到問題翻閱。
在這裡插入圖片描述

步驟 2解壓DataStudio_win_64.zip到本地。
步驟 3找到Data Studio的解壓目錄,雙擊Data Studio.exe。會自動開啟建立新連線的視窗,填寫配置項。
名稱自己定,主機和埠號為openGauss的伺服器IP和安裝時配置的埠,使用者和密碼為(上一步)自己建立的使用者(不能用omm)及對應密碼。我們普通測試環境就去勾選啟用SSL在這裡插入圖片描述
然後就可以正常使用啦~
在這裡插入圖片描述

DBeaver

DBeaver是一個面向開發人員和資料庫管理員的免費開源通用的資料庫工具。它支援任何具有JDBC驅動程式的資料庫,基於開源框架,支援編寫各種外掛。有社群版和Pro版,作為普通使用者使用社群版即可。它支援MS Windows 、Linux和Mac OS多個平臺,提供了豐富多樣的安裝程式。支援 Oracle、PostgreSQL、GP、MySQL、H2、SQL server等。

安裝前準備

1.由於並沒有整合opengauss進來,所以使用DBeaver連線opengauss前需要先下載JDBC驅動包。
在這裡插入圖片描述

2.解壓後可以看到同級目錄下有兩個jar包,分別是opengauss-jdbc- v e r s i o n . j a r 和 p o s t g r e s q l . j a r 。 o p e n g a u s s − j d b c − {version}.jar和postgresql.jar。opengauss-jdbc- version.jarpostgresql.jaropengaussjdbc{version}.jar是可以與PG-JDBC共存的包, 包名自2.0.1之後的版本全部從org.postgresql變更為org.opengauss,並且驅動名稱從jdbc:postgresql://替換為jdbc:opengauss://。

安裝&連線配置

下載DBeaver : https://dbeaver.io/download
這裡使用的是基於windows的dbeaver-ce-22.1.4-x86_64-setup.exe,雙擊一路安裝完成 。
1.在安裝目錄下啟動dbeaver.exe。選擇選單 > 資料庫> 驅動管理器,在彈出框中選擇新建。在建立新驅動中選擇庫頁籤,然後新增檔案選擇本地的·opengauss-jdbc-3.0.0.jar·,然後點選下面的找到類,選擇下拉框裡出來的驅動類。先不要點選 確定,還沒完。
在這裡插入圖片描述

2.切換 到設定頁籤。按照下圖進行配置,URL模板輸入:jdbc:opengauss://{host}:{port}/{database} 。點選確定後,驅動管理器就會出現新的opengauss的型別。點選關閉即可。
在這裡插入圖片描述

  1. 選擇 選單 > 資料庫 > 新建資料庫連線,在彈出框選擇 全部,搜尋框輸入opengauss找到它。
    在這裡插入圖片描述

在彈出框中填寫opengauss主機IP、埠,要連線的資料庫及使用者名稱 和密碼,點選測試連結。連結成功如下圖,顯示已連線。
在這裡插入圖片描述

然後就 可以使用了,佈局和前面的Data Studio比較相似。

容器環境

使用這兩個工具都可以正常的連線和使用。但是,容器環境需要注意開啟宿主機的埠對映,即容器啟動時需要使用 -p 引數指定容器內和宿主機的埠對映關係。下面例子中宿主機的埠號15432,工具連線時應使用該宿主機埠,無法直連容器內埠。

[root@pekphisprb70593 ~]# docker run --name opengauss --privileged=true -d -e GS_PASSWORD=Enmo@123 -v /enmotech/opengauss:/var/lib/opengauss -p 15432:5432 enmotech/opengauss:latest 
24a26ff3b9decfc23946fa3a2ad1f234ebcf480656aca5e9f84e471f77614233 
[root@pekphisprb70593 ~]# docker ps 
CONTAINER ID   IMAGE                       COMMAND                  CREATED              STATUS              PORTS                                         NAMES 
24a26ff3b9de   enmotech/opengauss:latest   "entrypoint.sh gauss…"   About a minute ago   Up About a minute   0.0.0.0:15432->5432/tcp, :::15432->5432/tcp   opengauss 
[root@pekphisprb70593 ~]# docker exec -it opengauss /bin/bash 
root@24a26ff3b9de:/# su - omm 
omm@24a26ff3b9de:~$ gsql 
omm=# CREATE USER test PASSWORD 'Gauss_234'; 
NOTICE:  The encrypted password contains MD5 ciphertext, which is not secure. 
CREATE ROLE 
omm=# GRANT ALL PRIVILEGES TO test;

使用工具連線容器環境進行連線配置時,除了埠號注意需要使用宿主機埠,其他引數與普通環境設定完全相同,也不需要單獨配置pg_hba.conf和postgres…conf 就可以直接連線。
在這裡插入圖片描述

注意,若提示“ERROR: permission denied for schema public”,是當前使用的使用者許可權不夠,需要Grant 賦予相應的使用者許可權,比如我前面就直接拉滿到sysadmin許可權。

openGauss: 一款高效能、高安全、高可靠的企業級開源關係型資料庫。

🍒如果您覺得博主的文章還不錯或者有幫助的話,請關注一下博主,如果三連點贊評論收藏就更好啦!謝謝各位大佬給予的支援!