openGauss 5.0 LTS部署至华为云ECS CentOS8.2实操教程

server/2024/9/23 11:18:21/

一、前言

openGauss是一款高可靠、高性能、高安全、易运维的开源关系型数据库管理系统,然而其全功能部署对系统要求非常高。

本实操教程能够使个人开发者以及高校师生能够以成本最小的方式快速将openGauss部署到华为云的ECS上,以便快速进行功能验证以及小规模数据库应用开发。

本教程预计实现的目标:

  • 开通安装有CentOS 8.2的华为云ECS
  • 安装并启动openGauss 5.0.0 LTS
  • 放通公网访问(本文部署到25432端口)
  • 能够使用Navicat等数据库软件以PostgreSQL兼容的方式进行连接

本教程仅供实验测试使用,安全性较低,请勿在生产环境按该教程部署

二、 开通华为云ECS

华为云控制台中搜索弹性云服务器产品并购买

相关参数解释说明与推荐

区域服务器所在的区域,不同区域定价差异较大,可以选择成本较低的区域如西南-贵阳一

计费模式:若需要长期部署应用(如课程作业开发),推荐选择包月

规格:服务器的配置,为了运行openGauss,内存必须2GB以上,推荐至少4GB,经测试若配置过低会导致数据库无法安装、运行或中途崩溃。成本较低的可以选择通用计算型s6(s6.medium.4),基础报价约86元每月。

镜像:服务器预装的操作系统,openGauss只支持OpenEuler和CentOS系列。考虑到一些软件的支持性,本教程采用CentOS 8.2 64bit,尽管官方只说明能够在CentOS7.6上运行,但实测该系统也能够正常运行部署。

系统盘:服务器运行的硬盘,若要节省成本可以选择高IO

点击下一步(网络配置)

网络、子网:保持默认配置即可

安全组:为了能够使服务器能够在外网访问数据库端口,我们必须预先放通相关端口,本教程以部署在25432端口为例(修改了默认的端口以降低扫描器发现并爆破密码的几率),此外我们可以顺便放通22、80等常用端口(使用“一键放通常用端口”按钮)

IP:为了公网访问,必须购买弹性IP。若服务器应用流量不大,推荐按流量计费,带宽可以选最高的(300M),建议勾选“随实例释放”避免在服务器过期后继续计费。按带宽计费成本非常高,不建议测试使用。

点击下一步(高级配置)

登录凭证:自行设定

云备份:为节省成本可以关闭(不购买)

支付:拥有基座课程代金券的同学可以使用代金券连续购买多个月,节省部署成本。(按流量计费的服务器产生的流量可能仍会额外消耗余额)

至此,华为云ECS已经创建完成

三、安装openGauss

创建数据库专用账户

openGauss的安全性设计必须以root以外的用户运行

首先用刚才的凭证使用root用户连接到服务器

在终端中运行以下命令

groupadd dbgroup
useradd -g dbgroup omm
passwd omm
输入你的omm账户密码

创建了一个omm账户以及一个用户组

下载openGauss

下载、解压并调整相关文件权限

curl -o opengauss.tar.gz https://opengauss.obs.cn-south-1.myhuaweicloud.com/5.0.0/x86/openGauss-5.0.0-CentOS-64bit-all.tar.gz
mkdir /opt/software/
mkdir /opt/software/openGauss
tar -xvf opengauss.tar.gz -C /opt/software/
cd /opt/software/
tar -jxf openGauss-5.0.0-CentOS-64bit.tar.bz2 -C /opt/software/openGauss
chown -R omm /opt/software/


安装依赖

对于本文档中的CentOS 8,由于已经停止支持,我们需要切换yum源,以清华大学源为例

minorver=8.5.2111
sudo sed -e "s|^mirrorlist=|#mirrorlist=|g" \-e "s|^#baseurl=http://mirror.centos.org/\$contentdir/\$releasever|baseurl=https://mirrors.tuna.tsinghua.edu.cn/centos-vault/$minorver|g" \-i.bak \/etc/yum.repos.d/CentOS-*.repo

CentOS 8安装供CentOS 7.6使用的OpenGauss会遇到一些问题,我们必须安装一些依赖
 

yum install -y readline-devel libaio libnsl compat-openssl10
cd /usr/lib64
ln -s libreadline.so.7 libreadline.so.6

安装

以下的命令将openGauss安装到25432端口,密码请在命令行中“设定的高强度密码”修改

su omm
cd /opt/software/openGauss/simpleInstall
sh install.sh -w 设定的高强度密码 -p 25432
vim ~/.bashrc
# *注释*ulimit那行(在行最前加一个#)若没有可以忽略
source ~/.bashrc


配置兼容、外网访问

众所周知,openGauss拥有PostgreSQL兼容的接口,若在此进行相关修改便可以在应用处无需修改使用主流软件的PG驱动连接数据库服务器使用。

我们下面来修改默认配置使其兼容PG的连接器。

cd  /opt/software/openGauss/data/single_node
vim postgresql.conf

添加/取消注释以下行

listen_addresses = '*'
local_bind_address = '0.0.0.0'
password_encryption_type = 0
vim pg_hba.conf
host    all             all             0.0.0.0/0               md5


启动或重启数据库(omm用户)

gs_ctl restart -D $GAUSSHOME/data/single_node


进入数据库命令行(omm用户)

创建一个名为postgres的管理用户(因为默认的omm用户无法从外部登录),密码请在命令行中定义

gsql -d postgres -p 25432
create user postgres password '你的高强度密码';
GRANT ALL PRIVILEGES TO postgres;
\q 退出


至此,你已经可以使用Navicat等软件连接到数据库了。

若提示找不到gs_ctl、gsql等命令,请在/opt/software/openGauss/下找到bin目录,并将其加入Path

至此,本教程结束~

欢迎各位同学交流学习

作者:黄浩


http://www.ppmy.cn/server/96151.html

相关文章

STK12.2+Python开发(三):通过Access获取当前场景的信息,计算卫星访问目标信息

计算访问 在STK中,“Access”通常指的是卫星与地面目标之间的可见性或访问机会。在STK API中,Access分析功能允许用户计算和分析特定时间段内卫星与地面目标之间的访问窗口。这些访问窗口可以用来确定卫星何时能够观测或通信目标。 一个Access能够retu…

ARM知识点二

一、指令 指令的生成过程 指令执行过程示例 if (a 0) {x 0; } else {x x 3; } //翻译为 cmp r0,#0 MOVEQ R1,#0 ADDGT R1,R1,#3指令获取:从Flash中读取 CMP R0, #0,控制器开始执行。 指令解码:解码器解析 CMP 指令,ALU比较R…

RHEL9网络设定及网络脚本

1. 添加一张网卡 2. 重写一个网卡配置文件 [rootlocalhost ~]# cd /etc/NetworkManager/system-connections/ [rootlocalhost system-connections]# ls ens160.nmconnection [rootlocalhost system-connections]# vim ens224.connection [rootlocalhost system-connections…

在亚马逊云科技AWS上利用PEFT和RLHF高效微调AI大模型减少有害回复

简介: 小李哥将继续每天介绍一个基于亚马逊云科技AWS云计算平台的全球前沿AI技术解决方案,帮助大家快速了解国际上最热门的云计算平台亚马逊云科技AWS AI最佳实践,并应用到自己的日常工作里。 本次我将介绍如何用亚马逊云科技的AI模型训练服…

org.springframework.web.client.HttpClientErrorException$NotFound异常

springCloud报错信息:org.springframework.web.client.HttpClientErrorException$NotFound: 404 null第一点: 第二点:没有httpclient工具类 注入RestTmeplate类时,改类需要RestController或ResponseBody

【视觉SLAM】 十四讲ch7习题

简介 本文主要内容是《视觉SLAM十四讲》(第二版)第7章的习题解答,并介绍了在解答习题中的一下思考和总结的经验。本文代码部分参考了:HW-of-SLAMBOOK2 1、除了本书介绍的ORB特征点,你还能找到哪些特征点?…

常见的SQL注入

联合查询 如下,要求我们传入一个id值过去。传参?id1,当我们输入id1和id2时,页面中name值和password的值会发生变化,说明此时我们输入的数据和数据库有交互并且将数据显示在屏幕上了 输入?id1,页面发生报错&#xf…

零售企业中 SRM 系统与开源 AI 智能名片商城系统的协同作用

摘要:本文深入探讨了 SRM 系统在零售企业与上游供应商关系管理中的关键作用,并引入开源 AI 智能名片商城系统,细致分析了两者如何协同助力零售企业优化供应链、提升竞争力。通过阐述 SRM 系统的功能模块及其对零售企业的多方面积极影响&#…