openGauss数据库在CentOS 7 中的单机部署与配置

部署

版本选择

通过openGuass官网下载地址 ,我们可以看到它支持x86_64Aarch64两种平台,又分成openEuler 22、openEuler 20、Centos 7以及Docker 版本。

进入CentOS 7标签,看到又分成企业版、轻量版、极简版与分布式镜像版。

本文只讨论CentOS 7系统,所以下载的是x86_64平台的CentOS 7 的轻量版中的6.0.1版本。(轻量版相比企业版,少了集群管理工具。)

上传到主机

openGauss安装与运行的用户不能是root。

所以我们新建一个用户user1,然后把openGauss-Server-6.0.1-CentOS7-x86_64.tar.bz2上传到CenOS 7的主机上,解压到user1的$HOME目录中。

之后我们以user1用户登录,就会发现当前目录(即$HOME)下是从openGauss安装包解压出来的全部文件。

目录列表如下:

[user1@localhost ~]$ ls  
bin  data  etc  include  jre  lib  logs  share  simpleInstall  version.cfg

我们进入simpleInstall:

[user1@loaclhost ~]$ cd simpleInstall

会看到一个install.sh,还有一个README.md

通过阅读README.md文件,安装openGauss的过程非常简单,只需要执行sh install.sh -w password(password是初始化数据库的密码,需要满足复杂度要求)即可。

但是,我们直接执行,却会报一个SEMMNI的错误:

[step 1]: check parameter  
[step 2]: check install env and os setting  
On systemwide basis, the maximum number of SEMMNI is not correct. the current SEMMNI value is: 128. Please  
check it.  
The required value should be greater than 321. You can modify it in file '/etc/sysctl.conf'.

通过查询官方文档,我们发现是需要设置kernel.sem

比如可以执行:

[root@loachost ~]# sysctl -w kernel.sem=250 85000 250 330

或者现在/etc/sysctl.conf里加入一行:

kernel.sem=250 85000 250 330

之后执行sysctl -p

设置好kernel.sem之后执行sh install.sh -w password就一路顺风了。

运行

因为我们是安装的单机版,所以install.sh执行之后,会把数据库的数据目录设置为$HOME/data/single_node

所以,我们后续的很多命令,只要需要指定数据目录的地方,都需要使用-D $HOME/data/single_node

其中,install.sh脚本还做了一件事,就是在当前用户的.bashrc文件里,加入了openGauss相关的环境变量,即:

export GAUSSHOME=/home/user1  
export PATH=$GAUSSHOME/bin:$PATH  
export LD_LIBRARY_PATH=$GAUSSHOME/lib:$LD_LIBRARY_PATH  
export GS_CLUSTER_NAME=dbCluster  
ulimit -n 1000000

之后就可以通过$GAUSSHOME来表示数据库安装路径了。

gs_ctl

控制启停的命令是gs_ctl,执行的时候加上数据目录。

如:

[user1@localhost ~]$ gs_ctl stop -D data/single_node  
[2025-07-18 06:52:22.364][5624][][gs_ctl]: gs_ctl stopped ,datadir is /home/user1/data/single_node    
waiting for server to shut down.... done  
server stopped

或者:

[user1@localhost ~]$ gs_ctl start -D data/single_node  
[2025-07-18 06:52:28.781][5634][][gs_ctl]: gs_ctl started,datadir is /home/user1/data/single_node    
[2025-07-18 06:52:28.815][5634][][gs_ctl]: waiting for server to start...

配置

默认地,openGauss只监听本地端口,我们可以改变这个配置。

数据库路径下的postgresql.conf,其中有监听地址与端口的配置。

# - Connection Settings -#listen_addresses = 'localhost'         # what IP address(es) to listen on;# comma-separated list of addresses;# defaults to 'localhost'; use '*' for all# (change requires restart)
#local_bind_address = '0.0.0.0'
#port = 5432   

其中,

  • listen_address 监听地址
  • port 端口

改好以后重启,openGauss就监听在我们指定的IP和端口上了。

但是这时候,如果我们在远程连接这个数据库,还会出错:

gsql: FATAL:  no pg_hba.conf entry for ...

只是需要我们在数据目录下面的pg_hba.conf中,把我们的客户端主机、用户名以及认证方法加进去。

首先,本地登录psql,在数据库中创建用户:

=# create user dbuser1 password 'dbpass@123';  
CREATE ROLE

然后,我们在pg_hba.conf中, 加入一行:

host   all             dbuser1          192.168.56.0/24        sha256

就可以在远程客户机上使用dbuser1用户登录了,命令为:

gsql school -h 192.168.56.1 -U dbuser1
Password for user dbuser1:    
gsql ((openGauss 6.0.1 build 84c20a90) compiled at 2025-01-17 17:29:32 commit 0 last mr  )  
Non-SSL connection (SSL connection is recommended when requiring high-security)  
Type "help" for help.  school=>

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

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

相关文章

HTTP响应状态码详解

HTTP 响应状态码(HTTP Status Code)是服务器在响应客户端请求时返回的 3 位数字代码,用于表示请求的处理状态。以下是常见的 HTTP 状态码及其含义: 1xx(信息性状态码) 表示请求已被接收,需要继…

Pytorch中register_buffer和torch.nn.Parameter的异同

说下register_buffer和Parameter的异同 相同点方面描述追踪都会被加入 state_dict(模型保存时会保存下来)。与 Module 的绑定都会随着模型移动到 cuda / cpu / float() 等而自动迁移。都是 nn.Module 的一部分都可以通过模块属性访问,如 self…

吉吉巳资源整站源码完整打包,适用于搭建资源聚合/整合类站点,全网独家,拿来就用

想要搭建一个资源整合站点,如影视聚合类站点、资讯聚合类站点、图集聚合类站点等,需要花费大量的时间来查找合适的系统或源码。然后要去测试,修复bug,一直到能够正常的运营使用,花费的时间绝对不短,今天分享…

嵌入式学习的第三十五天-进程间通信-HTTP

TCP/IP协议模型:应用层:HTTP;传输层:TCP UDP;网络层:IPv4 IPv6网络接口层一、HTTP协议1. 万维网WWW(World Wide Web) 世界范围内的,联机式的信息储藏所。 万维网解决了获取互联网上的数据时需要解决的以下问题&#x…

es 和 lucene 的区别

1. Lucene 是“发动机”,ES 是“整车”Lucene:只是一个 Java 库,提供倒排索引、分词、打分等底层能力。你必须自己写代码处理索引创建、更新、删除、分片、分布式、故障恢复、API 封装等所有逻辑。Elasticsearch:基于 Lucene 的分…

AS32S601 系列 MCU芯片GPIO Sink/Source 能力测试方法

一、引言随着电子技术的飞速发展,微控制器(MCU)在工业控制、汽车电子、商业航天等众多领域得到了广泛应用。国科安芯推出的AS32S601 系列 MCU 以其卓越的性能和可靠性,成为了众多设计工程师的首选之一。为了确保其在实际应用中的稳…

JAVA-08(2025.07.24学习记录)

面向对象类package com.mm;public class Person {/*** 名词-属性*/String name;int age;double height;/*** 动词-方法*/public void sleep(String add) {System.out.println("我在" add "睡觉");}public String introduce() {return "我的名字是&q…

地下隧道管廊结构健康监测系统 测点的布设及设备选型

隧道监测背景 隧道所处地下环境复杂,在施工过程中会面临围堰变形、拱顶沉降、净空收敛、初衬应力变化、土体塌方等多种危险情况。在隧道营运过程中,也会受到材料退化、地震、人为破坏等因素影响,引发隧道主体结构的劣化和损坏,若不…

node.js卸载与安装超详细教程

文章目录一、卸载Step1:通过控制面板删除node版本Step2:删除node的安装目录Step3:查找.npmrc文件是否存在,有就删除。Step4:查看以下文件是否存在,有就删除Step5:打开系统设置,检查系…

飞算JavaAI“删除接口信息” 功能:3 步清理冗余接口,让管理效率翻倍

在飞算JavaAI的接口设计与管理流程中,“删除接口信息” 功能为用户提供了灵活调整接口方案的便利。该功能的存在,让用户能够在接口生命周期的前期(审核阶段)及时清理无需创建的接口,保证接口管理的简洁性与高效性。一、…

行业热点丨SimLab解决方案如何高效应对3D IC多物理场与ECAD建模挑战?

半导体行业正快速超越传统2D封装技术,积极采用 3D集成电路(3D ICs)和2.5D 先进封装等方案。这些技术通过异构芯粒、硅中介层和复杂多层布线实现更高性能与集成度。然而,由于电子计算机辅助设计(ECAD)数据规…

2025暑期—05神经网络-BP网络

按误差反向传播(简称误差反传)训练的多层前馈网络线性回归或者分类不需要使用神经元,原有最小二程即可。求解J依次变小。使用泰勒展开,只看第一阶。偏导是确定的,需要让J小于0的delta WkWk构造完成后 J(Wk1)已知&#…

qml的信号槽机制

qml的信号槽机制和qtwidget差不多,但是使用方法不一样,qtwidget一般直接用connect函数把信号和槽一绑定就完事了,qml分为自动绑定和手动绑定。信号自动绑定在一个组件里面定义一个信号,用signal定义,当事件触发&#x…

Unity国际版下载链接分享(非c1国内版)

转载Unity国际版下载链接分享(非c1国内版) - 哔哩哔哩 大家平时使用Unity注意一下会发现,现在我们下载的Unity版本号后面都一个c1,但是大家在B站学习时大神UP主们使用的Unity版本号大都是没有c1的。 例如:我在用的是…

第4章唯一ID生成器——4.1 分布式唯一ID

在复杂的系统中,每个业务实体都需要使用ID做唯一标识,以方便进行数据操作。例如,每个用户都有唯一的用户ID,每条内容都有唯一的内容ID,甚至每条内容下的每条评论都有唯一的评论ID。 4.1.1 全局唯一与UUID 在互联网还未…

图论水题日记

cf1805D 题意 给定一棵树,规定dis(u,v)≥kdis(u,v) \geq kdis(u,v)≥k时(u,v)(u,v)(u,v)之间存在一条无向边,求k(1,2,...n)k(1,2,...n)k(1,2,...n)时图中的连通块个数 思路 前置知识:树上一点到其最远的点一定是树直径的两个端点之一若一个点…

自定义线程

每个程序至少有一个线程 —— 主线程 主线程是程序的起点,你可以从它开始创建新的线程来执行任务。为此,你需要创建自定义线程,编写在线程中执行的代码,并启动它。 通过继承创建自定义线程 创建新线程有两种主要方式:继…

2025真实面试试题分析-安卓客户端开发

以下是对安卓客户端开发工程师面试问题的分类整理、领域占比分析及高频问题精选(基于​​85道问题,总出现次数118次​​)。按技术领域整合为​​7大核心类别​​,按占比排序并精选高频问题标注优先级(1-5🌟…

算法学习笔记:29.拓扑排序——从原理到实战,涵盖 LeetCode 与考研 408 例题

拓扑排序(Topological Sorting)是一种针对有向无环图(DAG)的线性排序算法,它将图中的顶点按照一定规则排列,使得对于图中的任意一条有向边 u→v,顶点 u 都排在顶点 v 之前。拓扑排序在任务调度、…

利用Web3加密技术保障您的在线数据安全

在这个信息爆炸的数字化时代,保护个人和企业数据安全变得尤为重要。Web3技术以其去中心化和加密特性,为在线数据安全提供了新的解决方案。本文将探讨Web3技术如何通过加密技术保障您的在线数据安全,并介绍如何有效利用这些技术。 什么是Web3技…