@TOC
一、系統環境
操作系統:Centos 7
已配置環境:空
二、官方文檔
openGauss 官方文檔:準備軟硬件安裝環境
三、安裝步驟
3.1 環境準備
安裝依賴包:
yum -y install libaio-devel flex bison ncurses-devel glibc-devel patch redhat-lsb-core readline-devel openssl-devel sqlite-devel libnsl
安裝插件:
yum install -y bzip2 net-tools
為什麼要安裝這兩個?
安裝bzip2 是因為openGauss 的壓縮包比較特殊,需要用這個插件才能解壓;安裝net-tools 是因為在openGauss 初始化中會用到相應的命令。事先在這裏安裝好,後面就不用再操心這些了。
官方文檔中提及了一個安裝過程中的錯誤,實際中也會遇到,故先在這裏坐下相應的配置:
sysctl -w kernel.sem="250 85000 250 330"
3.2 關閉防火牆
根據官方文檔所説,openGauss 目前僅支持在防火牆關閉的狀態下進行安裝。
systemctl stop firewalld.service
setenforce 0
setenforce 0 命令只是暫時關閉selinux ,但也已經足夠支撐本次安裝。
3.3 創建用户
openGauss 不能用root 用户啓動,需要新建一個用户。
groupadd dbgroup
useradd -g dbgroup omm
passwd omm
3.4 創建數據目錄
mkdir -p /opt/software/openGauss
具體目錄可以根據個人喜好設置,不必追求一致。
3.5 配置環境變量
vi /etc/profile
添加以下配置:
export GAUSSHOME=/opt/software/openGauss/bin
export LD_LIBRARY_PATH=$GAUSSHOME/lib::$LD_LIBRARY_PATH
export PATH=$GAUSSHOME/bin:$PATH
使配置文件生效:
source /etc/profile
3.6 解壓並初始化
對壓縮包解壓:
tar -jxf openGauss-3.0.0-CentOS-64bit.tar.bz2 -C /opt/software/openGauss
修改目錄所有者,因為/opt/software/openGauss 文件夾是用root 用户創建的,故所有者為root,在openGauss 初始化時會因為omm 用户權限不足導致失敗,故需要事先修改該文件夾及其子文件夾的所有者為omm 。
chown -R omm:dbgroup /opt/software/openGauss
安裝、初始化openGauss:
cd /opt/software/openGauss/simpleInstall
su omm
sh install.sh -w "123qweASD~" &&source ~/.bashrc
yes
初始化腳本執行成功後,查看openGauss 是否正常運行:
ps ux | grep gaussdb
gs_ctl query -D /opt/software/openGauss/data/single_node
3.7 修改配置
cd /opt/software/openGauss/data/single_node/
cp pg_hba.conf pg_hba.conf.cp
cp postgresql.conf postgresql.conf.cp
vi postgresql.conf
修改以下值:
listen_addresses = 'localhost,192.168.88.159'
ssl = off
password_encryption_type = 1
為什麼要設置password_encryption_type = 1 ?因為navicat 連接openGauss 的時候需要的密碼是openGauss 使用md5 加密的。
vi pg_hba.conf
host all all 0.0.0.0/0 sha256
host all all 0.0.0.0/0 md5
3.8 數據庫重啓
gs_ctl stop -D /opt/software/openGauss/data/single_node
gs_ctl start -D /opt/software/openGauss/data/single_node
3.9 創建openGauss新賬號
openGauss 禁止使用omm用户進行遠程連接:
進入openGauss 數據庫:
gsql -d postgres
新建賬號test ,密碼為 Gauss_234,賦予全部權限:
CREATE USER test PASSWORD 'Gauss_234';
GRANT ALL PRIVILEGES TO test;
\q
Navicat 使用 PostgreSQL 連接登錄openGauss 數據庫:
為什麼能這麼做?因為openGauss 是基於PostgreSQL 研發的。
四、總結
本文內容:
在空白的Centos 7 系統中從無到有部署了openGauss 數據庫,並配置遠程連接。
我是陳冰安,在知識宇宙中摸爬滾打,分享個人所得,也期待志同道合。
本文首發於 CSDN。