使用gsql連線資料庫

語言: CN / TW / HK

目錄

注意事項

前提條件

本地連線資料庫

密態資料庫連線操作

遠端連線資料庫


gsql是openGauss提供的在命令列下執行的資料庫連線工具。此工具除了具備操作資料庫的基本功能,還提供了若干高階特性,便於使用者使用。本節只介紹如何使用gsql連線資料庫,關於gsql使用方法的更多資訊請參考《工具參考》中“客戶端工具 > gsql”章節。

注意事項

預設情況下,客戶端連線資料庫後處於空閒狀態時會根據引數session_timeout的預設值自動斷開連線。如果要關閉超時設定,設定引數session_timeout為0即可。

前提條件

確認連線資訊

本地連線資料庫

  1. 以作業系統使用者omm登入資料庫主節點。

  2. 連線資料庫。

資料庫安裝完成後,預設生成名稱為postgres的資料庫。第一次連線資料庫時可以連線到此資料庫。

執行如下命令連線資料庫。

  gsql -d postgres -p 8000

其中postgres為需要連線的資料庫名稱,8000為資料庫主節點的埠號。請根據實際情況替換。另外,也可以使用如下任一命令連線資料庫。

 gsql postgres://omm:[email protected]:8000/postgres -r 
   gsql -d "host=127.0.0.1 port=8000 dbname=postgres user=omm password=Gauss_234"

連線成功後,系統顯示類似如下資訊:

  gsql ((openGauss x.x.x build 50dc16a6) compiled at 2020-11-29 05:49:21 commit 1071 last mr 1373)
   Non-SSL connection (SSL connection is recommended when requiring high-security)
   Type "help" for help.
   
   openGauss=# 

omm使用者是管理員使用者,因此係統顯示“DBNAME=#”。若使用普通使用者身份登入和連線資料庫,系統顯示“DBNAME=>”。

“Non-SSL connection”表示未使用SSL方式連線資料庫。如果需要高安全性時,請使用SSL連線

  1. 首次登入建議修改密碼。命令如下。

    openGauss=# ALTER ROLE omm IDENTIFIED BY 'Mypwd123' REPLACE '[email protected]';
  2. 退出資料庫。

    openGauss=# \q

密態資料庫連線操作

  1. 以作業系統使用者omm登入資料庫主節點。

  2. 連線資料庫。

    資料庫安裝完成後,預設生成名稱為postgres的資料庫。第一次連線資料庫時可以連線到此資料庫。

    執行如下命令連線資料庫。

    gsql -d postgres -p 8000 -C

    -C表示密態資料庫開啟,可以建立金鑰和加密表。其它引數請參見本地連線資料庫

    連線成功後,系統顯示類似如下資訊:

    gsql ((GaussDB Kernel VxxxRxxxCxxopenGauss x.x.x build 50dc16a6) compiled at 2020-11-24 20:03:57 commit 1093 last mr 1793 debug)
    Non-SSL connection (SSL connection is recommended when requiring high-security)
    Type "help" for help.
        
    openGauss=#
    
  3. 退出資料庫。

    openGauss=# \q

遠端連線資料庫

  1. 完成遠端連線配置,操作步驟參見配置服務端遠端連線
  2. 在客戶端機器(10.10.0.30)上,上傳客戶端工具包並配置gsql的執行環境變數。此處以openEuler環境為例。

    a. 以root使用者登入客戶端機器。

    b. 建立“/tmp/tools”目錄。

    ```
    mkdir /tmp/tools
    ```
    

    c. 獲取軟體安裝包中的“openGauss-x.x.x-openEuler-64bit-Libpq.tar.gz”上傳到“/tmp/tools”路徑下。

    >![](public_sys-resources/icon-note.gif) **說明:** 
    >-   軟體包相對位置為安裝時所放位置,根據實際情況填寫。
    
    >-   不同的作業系統,工具包檔名稱會有差異。請根據實際的作業系統型別選擇對應的工具包。
    

    d. 解壓檔案。

    ```
    cd /tmp/tools
    tar -zxvf openGauss-x.x.x-openEuler-64bit-Libpq.tar.gz
    ```
    

    e. 登入資料庫主節點所在的伺服器,拷貝資料庫安裝目錄下的bin目錄到客戶端主機的“/tmp/tools”路徑下。

    ```
    scp -r /opt/huawei/install/app/bin [email protected]:/tmp/tools
    ```
    
    其中,/opt/huawei/install/app為clusterconfig.xml檔案中配置的\{gaussdbAppPath\}路徑,10.10.0.30為客戶端主機ip。
    

    f. 登入客戶端所在主機,設定環境變數。

    開啟“\~/.bashrc”檔案。
    
    ```
    vi ~/.bashrc
    ```
    
    在其中輸入如下內容後,使用“:wq!”命令儲存並退出。
    
    ```
    export PATH=/tmp/tools/bin:$PATH
    export LD_LIBRARY_PATH=/tmp/tools/lib:$LD_LIBRARY_PATH
    ```
    

    g. 使環境變數配置生效。

    ```
    source ~/.bashrc
    ```
    
  3. 連線資料庫。

    資料庫安裝完成後,預設生成名稱為postgres的資料庫。第一次連線資料庫時可以連線到此資料庫。

    gsql -d postgres -h 10.10.0.11 -U jack -p 8000 -W [email protected]
    

    postgres為需要連線的資料庫名稱,10.10.0.11為資料庫主節點所在的伺服器IP地址,jack為連線資料庫的使用者,8000為資料庫主節點的埠號,[email protected]為連線資料庫使用者jack的密碼。

     說明:
    - 連線openGauss的機器與openGauss不在同一網段時,-h指定的IP地址應為Manager介面上所設的coo.cooListenIp2(應用訪問IP)的取值。
    - 禁止使用omm使用者進行遠端連線資料庫。