openGussDb企业版5.0.1搭建

news/2025/3/17 5:53:37/文章来源:https://www.cnblogs.com/xiaobaijin/p/18503771

openGussDb企业版5.0.1搭建

官方文档地址:

https://docs-opengauss.osinfra.cn/zh/docs/5.0.0/docs/ReleaseNotes/Releasenotes.html

软件包&客户端下载地址:

https://opengauss.org/zh/download/

环境准备

1、软件环境要求

软件类型

配置描述

linux操作系统

ARM:

openEuler 20.03LTS(推荐采用此操作系统)

openEuler 22.03LTS

麒麟V10

Asianux 7.5

x86:

openEuler 20.03LTS

openEuler 22.03LTS

CentOS 7.6(本文搭建使用)

Asianux 7.6

说明:

最小资源:8C/16G/200G,当前安装包只能在英文操作系统上安装使用。

python

python版本需要3.6.X,并安装pip

python需要通过--enable-shared方式编译。

本文单机配置

IP:10.10.77.71 系统:Centos 7.6 8C/16G/200G

环境准备

  1. 关闭防火墙

vim /etc/selinux/config
SELINUX=disabled

setenforce 0

systemctl disable firewalld.service

systemctl stop firewalld.service

  1. 设置字符集

vim /etc/profile
export LANG=zh_CN.utf8

source /etc/profile

  1. 关闭swap交换内存

swapoff -a

  1. 安装依赖包

yum -y groupinstall "Development tools"

yum install -y libaio-devel flex bison ncurses-devel glibc-devel patch redhat-lsb-core readline-devel libnsl zlib-devel bzip2-devel openssl-devel sqlite-devel tk-devel

  1. 调整主机名

hostnamectl set-hostname opengauss_71

  1. 安装python3

建议版本:3.6.8或以上

python3.6.8安装:

wget https://www.python.org/ftp/python/3.6.8/Python-3.6.8.tar.xz

yum -y install gcc wget gcc-c++ automake autoconf libtool libxml2-devel libxslt-devel perl-devel perl-ExtUtils-Embed pcre-devel openssl-devel

mkdir /usr/local/python3

xz -d Python-3.6.8.tar.xz

tar xf Python-3.6.8.tar -C /usr/local/python3/

cd /usr/local/python3/Python-3.6.8/

./configure --prefix=/usr/local/python3/ --enable-optimizations --enable-shared

make && make install

//创建软连接

ln -sf /usr/local/python3/bin/python3.6 /usr/bin/python3

ln -sf /usr/local/python3/bin/pip3 /usr/bin/pip3

//替换原有python文件

mv /usr/bin/python /usr/bin/python22

ln -sf /usr/bin/python3 /usr/bin/python

//修改配置文件

vim /usr/bin/yum

把文件头部的#!/usr/bin/python改成#!/usr/bin/python22

vim /usr/libexec/urlgrabber-ext-down

把文件头部的#!/usr/bin/python改成#!/usr/bin/python22

vim /etc/profile

export PYTHONPATH=/usr/local/python3/lib/python3.6/site-packages

source /etc/profile

python3 -V

Python 3.6.8

解决此报错:

[root@node1_hostname script]# python3 -V

python3: error while loading shared libraries: libpython3.6m.so.1.0: cannot open shared object file: No such file or directory

cp /usr/local/lib/libpython3.6m.so.1.0 /usr/local/python3/lib/

https://wen.baidu.com/question/1713236375872112900.html

python3 -V

pip依赖包安装

pip3 install --upgrade pip -i http://mirrors.aliyun.com/pypi/simple --trusted-host mirrors.aliyun.com

pip3 install psutil netifaces cffi pycparser cryptography pynacl bcrypt paramiko -i http://mirrors.aliyun.com/pypi/simple --trusted-host mirrors.aliyun.com

  1. 重启服务器

reboot

预安装

下载软件包

下载地址:https://opengauss.org/zh/download/

根据系统版本选择对应的安装包

1712570450431

上传安装包

mkdir -p /soft/ogs

chmod 755 -R /soft/ogs

上传openGauss-5.0.1-CentOS-64bit-all.tar.gz文件至/soft/ogs/

cd /soft/ogs

解压安装包

tar zxvf openGauss-5.0.1-CentOS-64bit-all.tar.gz

装包解压后,会有OM安装包和Server安装包。继续解压OM安装包,会在/soft/ogs路径下自动生成script子目录,并且在script目录下生成gs_preinstall等各种OM工具脚本。

tar zxvf openGauss-5.0.1-CentOS-64bit-om.tar.gz

添加环境变量

vim /etc/profile
export LD_LIBRARY_PATH=/soft/ogs/script/gspylib/clib

source /etc/profile

单节点配置

#本文为单节点安装配置,主从节点请参考官方文档

vim /soft/ogs/script/gspylib/etc/conf/config.xml

<?xml version="1.0" encoding="UTF-8"?>

<ROOT>

<!-- openGauss整体信息 -->

<CLUSTER>

<!-- 数据库名称 -->

<PARAM name="clusterName" value="dbCluster" />

<!-- 数据库节点名称(hostname) -->

<PARAM name="nodeNames" value="opengauss_71" />

<!-- 数据库安装目录-->

<PARAM name="gaussdbAppPath" value="/opt/huawei/install/app" />

<!-- 日志目录-->

<PARAM name="gaussdbLogPath" value="/var/log/omm" />

<!-- 临时文件目录-->

<PARAM name="tmpMppdbPath" value="/opt/huawei/tmp" />

<!-- 数据库工具目录-->

<PARAM name="gaussdbToolPath" value="/opt/huawei/install/om" />

<!-- 数据库core文件目录-->

<PARAM name="corePath" value="/opt/huawei/corefile" />

<!-- 节点IP,与数据库节点名称列表一一对应 -->

<PARAM name="backIp1s" value="10.10.77.71"/>

</CLUSTER>

<!-- 每台服务器上的节点部署信息 -->

<DEVICELIST>

<!-- 节点1上的部署信息 -->

<DEVICE sn="opengauss_71">

<!-- 节点1的主机名称 -->

<PARAM name="name" value="opengauss_71"/>

<!-- 节点1所在的AZ及AZ优先级 -->

<PARAM name="azName" value="AZ1"/>

<PARAM name="azPriority" value="1"/>

<!-- 节点1的IP,如果服务器只有一个网卡可用,将backIP1和sshIP1配置成同一个IP -->

<PARAM name="backIp1" value="10.10.77.71"/>

<PARAM name="sshIp1" value="10.10.77.71"/>

<!--dbnode-->

<PARAM name="dataNum" value="1"/>

<PARAM name="dataPortBase" value="15400"/>

<PARAM name="dataNode1" value="/opt/huawei/install/data/dn"/>

<PARAM name="dataNode1_syncNum" value="0"/>

</DEVICE>

</DEVICELIST>

</ROOT>

提示:

在执行前置脚本gs_preinstall时,需要规划好openGauss主机名称、配置文件路径、安装包存放路径、程序安装目录、实例数据目录,后续普通用户使用过程中不能再更改这些路径。

运行前置脚本gs_preinstall准备安装环境时,脚本内部会自动将openGauss配置文件、解压后的安装包同步拷贝到其余服务器的相同目录下。

本文路径:

安装包路径:/soft/ogs

数据库安装路径:/opt/huawei/

日志路径:/var/log/omm

创建数据库用户

groupadd dbgrp

useradd -g dbgrp omm

passwd omm

预安装

必须使用root账号进行操作

chmod 755 -R /soft/ogs

chown omm:dbgrp -R /soft/ogs/

cd /soft/ogs/script

#预解决A14报错

./gs_checkos -i B6

#执行初始化

[root@opengauss_71 script]# ./gs_preinstall -U omm -G dbgrp -X /soft/ogs/script/gspylib/etc/conf/config.xml

Parsing the configuration file.

Successfully parsed the configuration file.

Installing the tools on the local node.

Successfully installed the tools on the local node.

Setting host ip env

Successfully set host ip env.

Are you sure you want to create the user[omm] (yes/no)? yes

Preparing SSH service.

Successfully prepared SSH service.

Checking OS software.

Successfully check os software.

Checking OS version.

Successfully checked OS version.

Creating cluster's path.

Successfully created cluster's path.

Set and check OS parameter.

Setting OS parameters.

Successfully set OS parameters.

Warning: Installation environment contains some warning messages.

Please get more details by "/soft/ogs/script/gs_checkos -i A -h opengauss_71 --detail".

Set and check OS parameter completed.

Preparing CRON service.

Successfully prepared CRON service.

Setting user environmental variables.

Successfully set user environmental variables.

Setting the dynamic link library.

Successfully set the dynamic link library.

Setting Core file

Successfully set core path.

Setting pssh path

Successfully set pssh path.

Setting Cgroup.

Successfully set Cgroup.

Set ARM Optimization.

No need to set ARM Optimization.

Fixing server package owner.

Setting finish flag.

Successfully set finish flag.

Preinstallation succeeded.

#初始化若异常可参考以下地址解决

https://blog.csdn.net/Oliviahome/article/details/130077236

#执行检查

[root@opengauss_71 script]# /soft/ogs/script/gs_checkos -i A -h opengauss_71 --detail

最后显示则正常:

Total numbers:14. Abnormal numbers:0. Warning numbers:4.

正式安装

执行安装

(1)目录授权

chown -R omm.dbgrp /opt/huawei

chown -R omm.dbgrp /soft/ogs/

(2)执行安装

su - omm

cd /soft/ogs/script

./gs_install -X /soft/ogs/script/gspylib/etc/conf/config.xml --gsinit-parameter="--locale=en_US.utf8"

[omm@opengauss_71 script]$ ./gs_install -X /soft/ogs/script/gspylib/etc/conf/config.xml --gsinit-parameter="--locale=en_US.utf8"

Parsing the configuration file.

Check preinstall on every node.

Successfully checked preinstall on every node.

Creating the backup directory.

Successfully created the backup directory.

begin deploy..

Installing the cluster.

begin prepare Install Cluster..

Checking the installation environment on all nodes.

begin install Cluster..

Installing applications on all nodes.

Successfully installed APP.

begin init Instance..

encrypt cipher and rand files for database.

Please enter password for database:

Please repeat for database:

[GAUSS-50322] : Failed to encrypt the password for databaseError:

Try "gs_guc --help" for more information.

Invalid password,it must contain at least three kinds of characters

Please enter password for database:

Please repeat for database:

begin to create CA cert files

The sslcert will be generated in /opt/huawei/install/app/share/sslcert/om

NO cm_server instance, no need to create CA for CM.

Non-dss_ssl_enable, no need to create CA for DSS

Cluster installation is completed.

Configuring.

Deleting instances from all nodes.

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.

The cluster status is Normal.

Successfully started cluster.

Successfully installed application.

end deploy..

安装过程中提示输入密码,注意密码复杂度必须满足数字、字母、大写字母、特殊字符内的三个条件,不然会报[GAUSS-50322]错误,示例密码:umpay@2010

查看数据库

(1)查看数据库

[omm@opengauss_71 script]$ gs_om -t status

-----------------------------------------------------------------------

cluster_name : dbCluster

cluster_state : Normal

redistributing : No

  1. 登录数据库

[omm@opengauss_71 script]$ gsql -d postgres -p15400

gsql ((openGauss 5.0.1 build 33b035fd) compiled at 2023-12-15 20:19:06 commit 0 last mr )

Non-SSL connection (SSL connection is recommended when requiring high-security)

Type "help" for help.

openGauss=#

安装后基础配置

1、开启远程登录

配置客户端认证方式,请参考官网配置客户端接入认证。

配置listen_addresses,listen_addresses即远程客户端连接使用的数据库主节点ip或者主机名。

1、以操作系统用户omm登录数据库主节点。

#su - omm

2、使用如下命令查看数据库主节点目前的listen_addresses配置。

gs_guc check -I all -c "listen_addresses"

3、使用如下命令把要添加的ip追加到listen_addresses后面,多个集群之间用英文逗号分隔。例如,追加ip地址10.10.77.70。(数据库地址,单机版默认不需要添加)

gs_guc set -I all -c "listen_addresses='localhost,10.10.77.70'"

4、配置pg_hba.conf,添加数据库主节点ip和客户端ip。

使用如下命令添加数据库访问节点ip到pg_hba.conf,其中ga_umso为数据库授权用户名称(也可是all),认证方式为sha256

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

gs_guc set -N all -I all -h "host all ga_umso 10.10.85.0/32 sha256"

  1. 执行如下命令重启openGauss。

gs_om -t stop && gs_om -t stop

gs_om -t stop && gs_om -t start

2、创建用户

su - omm

#连接数据库

gsql -d postgres -p15400

#创建新用户

# 将会在postgres下创建用户ga_umso,在其他数据库下是无法删除此用户

CREATE USER ga_umso WITH Sysadmin IDENTIFIED BY 'umso@123';

# 给用户授权

GRANT SELECT,INSERT,UPDATE,DELETE ON ALL TABLES IN SCHEMA public TO ga_umso;

GRANT USAGE,SELECT ON ALL SEQUENCES IN SCHEMA ga_umso TO ga_umso;

# 查看用户列表

\du

# 查看用户ga_mason

\du ga_umso

# 删除用户

drop user ga_umso;

# 切换用户,需要输入密码

\c - ga_umso

如下图:

创建数据库

#创建数据库

数据库:表空间>数据库>表

(1)查看表空间

openGauss=# \db

(2)查看数据库

openGauss=# \l

(3)创建数据库

a.创建数据库对象时可以指定表空间;

b.可以不创建表空间,创建数据库对象时不指定表空间,相关的数据库对象会默认保存在PG_DEFAULT空间中。

# 创建新的表空间umso_tbs;

CREATE TABLESPACE umso_tbs RELATIVE LOCATION 'tablespace/umso_tbs';

# 创建ga_umso数据库,指定表空间umso_tbs

CREATE DATABASE ga_umso WITH TABLESPACE = umso_tbs;

(4)不指定表空间创建

CREATE DATABASE ga_umstest;

(5)删除数据库

DROP DATABASE ga_umstest;

(6)切换数据库

openGauss=# \c ga_umso

客户端配置

linux客户端

(一)获取客户端lib包

从官网获取openGauss-5.0.1-CentOS-64bit-Libpq.tar.gz软件包,如下:

(二)客户端配置

#创建客户端目录

mkdir -pv /ums/command/opengauss_client

#上传openGauss-5.0.1-CentOS-64bit-Libpq.tar.gz 至/ums/command/opengauss_client

#解压lib包

tar zxvf openGauss-5.0.1-CentOS-64bit-Libpq.tar.gz

#登录数据库主节点所在的服务器,拷贝数据库安装目录下的bin目录到客户端主机的“/ums/command/opengauss_client”路径下。

scp -r /opt/huawei/install/app/bin umpay@10.10.77.56:/ums/command/opengauss_client

#登录客户端服务器,配置环境变量

cd && vim .bash_profile

#在最后添加如下变量

export PATH=/ums/command/opengauss_client/bin:$PATH

export LD_LIBRARY_PATH=/ums/command/opengauss_client/lib:$LD_LIBRARY_PATH

source .bash_profile

#执行远程连接

gsql -d ga_umso -h 10.10.77.71 -U ga_umso -p 15400 -W umso@123

  1. 解决连接报错

本文客户端为麒麟V10系统,因版本内核较高有lib包依赖问题,解决方式如下:

#解决连接报错

[umpay@localhost ~]$ gsql -d ga_umso -h 10.10.77.71 -U ga_umso -p 15400 -W umso@123

gsql: error while loading shared libraries: libreadline.so.6: cannot open shared object file: No such file or directory

原因分析:系统已安装libreadline.so.7,libreadline.so.6的版本已过时,将版本7做软连接为版本6即可解决问题!

解决步骤:

su - root

cd /usr/lib64/

ln -s libreadline.so.7.0 libreadline.so.6

#若配置了oracle客户端,解决sqlplus连接报错(未配置可忽略)

[umpay@localhost ~]$ sqlplus

sqlplus: error while loading shared libraries: libnsl.so.1: cannot open shared object file: No such file or directory

原因分析:系统已安装libnsl.so.2,libnsl.so.1的版本已过时,将版本2做软连接为版本1即可解决问题!

解决步骤:

su - root

cd /usr/lib64/

ln -s libnsl.so.2.0.0 libnsl.so.1

windows客户端

#注意使用windows客户端需安装jdk11或以上版本,请到oracle官网下载,下载地址:

https://www.oracle.com/java/technologies/java-se-glance.html

#通过官网下载DataStudio_win_64.zip安装包,如下图:

#点击下图图标打开应用

#输入配置节点信息

#连接后如下图:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/822258.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

USB协议详解第20讲(USB包-帧首包SOF)

1.包的四种类型 根据包的组成把包分为四种类型,分别是、帧首包SOF(Start of Frame)、命令包(Token)、数据包(Data)、握手包(Handshake),如下图(大家一定要把PID类型和包类型分开)。4种PID类型和4种包类型(按照组成分类)的区别如下,大家注意区分。2.SOF包组成 我…

BigDecimal使用

常见方法 我们在使用 BigDecimal 时,为了防止精度丢失,推荐使用它的BigDecimal(String val)构造方法或者 BigDecimal.valueOf(double val) 静态方法来创建对象。 《阿里巴巴 Java 开发手册》对这部分内容也有提到,如下图所示。加减乘除 add 方法用于将两个 BigDecimal 对象相…

低功耗4G模组:FTP应用示例

​ 一、FTP 概述 FTP(File Transfer Protocol,文件传输协议) 是 TCP/IP 协议组中的协议之一。 FTP协议包括两个组成部分,其一为FTP服务器,其二为FTP客户端。 其中FTP服务器用来存储文件,用户可以使用FTP客户端通过FTP协议访问位于 FTP 服务器上的资源。在开发网站的时候,…

「FHQ_Treap」学习笔记

一、前言 & 基本理论 来自笔者的肯定:最容易理解且比较好写的平衡树(不过就是常数有点大了),可能是笔者花了较长的时间去理解旋转 Treap 和 Splay 的旋转吧()。FHQ 不仅比旋转法编码简单,而且能用于区间翻转、移动、持久化等场合。——《算法竞赛》FHQ_Treap 的所有…

鲜花-CSP2024 游记

前言 坐标 \(\text{SX}\),去年 \(\text{CSP}\) 和 \(\text{NOIP}\) 都爆炸了,于是这就是我最后一年了。 初赛 赛前随便做了三份题,可以随便过线就放下不管了。 赛时光速写完选择,然后被状压题硬控,没太看懂在求什么,有点慌乱,后面的完善程序二分题很快写上去了,但是 \(…

如何使用NTP同步时间?

​ 一、NTP通信概述 很多场景中,由于业务需要,模块需要保持正确的系统时钟,才能正常工作。但是模块上电后的初试时间戳是946713600(即2000/01/01,16:00:00),所以同步时钟成为了开发者要解决的重要问题。对于Cat.1模块,移动/电信卡,通常会下发基站时间,那么sntp就不是必要…

工地升降机AI人数识别系统

工地升降机人数识别系统采用了AI神经网络和深度学习算法,工地升降机AI人数识别系统通过升降机内置的摄像头实时监测轿厢内的人员数量。通过图像处理和人脸识别算法,系统能够精确地识别升降机内的人数。一旦系统识别到人数达到或者超过设定的阈值,工地升降机AI人数识别系统会…

楼道堆积物视觉识别监控系统

楼道堆积物视觉识别监控系统采用了AI神经网络和深度学习算法,楼道堆积物视觉识别监控系统通过摄像头实时监测楼道的情况,通过图像处理、物体识别和目标跟踪算法,系统能够精确地识别楼道通道是否被堆积物阻塞。楼道堆积物视觉识别监控系统检测到堆积物的存在,立刻通过告警信…

变电站人员安全作业行为识别监测系统

变电站人员安全作业行为识别监测系统采用了AI神经网络和深度学习算法,变电站人员安全作业行为识别监测系统通过利用已装好的监控摄像头,进行人员行为分析。针对未穿戴安全帽、工作服、安全马甲、绝缘靴等不符合安全要求的行为,系统能够实时识别并发出预警,提醒工作人员及时…

redis数据库操作指令

一、数据库操作指令 2、redis中库说明 对于一个redis服务而言,包含默认有16个数据库给我们使用,从0开始编号,共15号数据库,默认使用的是0号数据库 切换库,select 库号 举例:使用1号库:select 1 库和库之间数据不共享 库和库之间的键可以重名 2、redis中清空库的指令清空…

AI智能识别未穿工作服识别

AI智能识别未穿工作服识别系统采用了AI神经网络和深度学习算法,AI智能识别未穿工作服识别系统通过现场监控摄像头对特定区域内工人的穿戴情况进行实时监测和分析。系统经过大量的数据训练和算法优化,能够准确识别工人是否穿戴合规的工作服、反光衣、安全帽等装备。AI智能识别…

从零开始学五笔(五):撇区字根

介绍下撇区的字根讲解格式:先介绍按键的区位号、口诀内容、口诀说明 然后列每个字根能组成什么汉字,难拆字将用中括号标出‍ T 键 区位号:31 口诀:禾竹一撇双人立,反文条头共三一 说明:禾:一个字根竹:指的是竹字头 ⺮一撇:作为撇区的第一个键,有一个字根为 丿双人立:…