openGauss6.0.0 LTS极简版环境配置和安装
openGauss6.0.0 LTS极简版环境配置和安装
一、openGauss 6.0.0 LTS 极简版
openGauss 6.0.0 LTS 极简版适用于轻量级场景,如个人开发、测试环境等。它提供了以下功能特点:
基础功能:支持 SQL 标准语法、数据类型(包括 JSON 和 JSONB)、表(包括临时表、全局临时表、外部表)、视图、物化视图、外键、索引(包括 Btree 索引、Gin 索引、hash 索引)、序列、函数、触发器、聚合函数等。
轻量级部署:简化安装流程,适合单节点或小规模集群部署。
易用性:提供简单的安装脚本和配置文件,降低部署难度。
二、配置安装过程
(1)环境准备
操作系统:推荐使用openEuler22.03 或其他兼容的 Linux 发行版。
用户权限:创建普通用户(如 omm)和用户组(如 dbgrp),并确保该用户对安装路径有读、写和执行权限。
端口检查:确保指定的 openGauss 端口未被占用。
……
(2)下载与解压
(3)执行安装和检查
五、实验步骤
1.set gloabal parameters
(1)以root身份通过MobaXterm登录openEuler主机,创建openGauss文件夹和用户配置文件。
[root@openEuler ~]# mkdir -p /opt/software/openGauss
[root@openEuler ~]# touch /etc/profile.d/custom.sh
[root@openEuler ~]# vim /etc/profile.d/custom.sh
图1 创建openGauss文件夹和用户配置文件
(2)编辑custom.sh文件。在文末添加
export MY_HOSTNAME=openEuler ## 主机名
export MY_HOSTIP=192.168.116.11 ## IP地址
export MY_SOFTWARE_DIRECTORY=/opt/software/openGauss ## 软件包所在目录
export MY_XML=/opt/software/openGauss/clusterconfig.xml ##集群配置XML文件
export OPENGAUSS_DOWNLOAD_URL=https://opengauss.obs.cn-south-1.myhuaweicloud.com/6.0.0/openEuler22.03/x86/openGauss-Server-6.0.0-openEuler22.03-x86_64.tar.bz2 ##openGauss安装压缩包下载地址
图2 编辑custom.sh文件
按[ESC]键,在底部命令栏输入:wq按【Enter】键保存并返回MobaXterm命令窗口,通过source命令使得配置文件生效。
[root@openEuler ~]# source /etc/profile.d/custom.sh
图3 使得custom.sh配置文件生效
(3)配置主机名和hosts文件通过 hostnamectl设置主机名
[root@openEuler ~]# hostnamectl set-hostname $MY_HOSTNAME
图4 配置主机名
编辑hosts文件。
[root@openEuler ~]# vim /etc/hosts
在文末添加
192.168.116.11 openEuler ##openGauss OM IP Hosts Mapping
后,按[ESC]键,在底部命令栏输入:wq按【Enter】键保存并返回MobaXterm命令窗口,通过cat命令查看hosts文件内容
[root@openEuler ~]# cat /etc/hosts
图5 配置hosts文件
(4)创建数据库服务器集群配置文件。数据库服务器集群配置文件包含部署openGauss的服务器信息、安装路径、IP地址以及端口号等。用于告知openGauss如何部署。用户需根据不同场配置对应的XML文件。
创建数据库服务器集群文件dbservercluster_congfig.xml并配置。
[root@openEuler ~]# touch /opt/software/openGauss/dbservercluster_congfig.xml
[root@openEuler ~]# vim /opt/software/openGauss/dbservercluster_congfig.xml
在文末添加
<?xml version="1.0" encoding="UTF-8"?>
<ROOT>
<!-- openGauss数据库整体信息 -->
<CLUSTER>
<!-- 数据库名称 -->
<PARAM name="clusterName" value="dbServerCluster" />
<!-- 数据库节点名称(hostname) -->
<PARAM name="nodeNames" value="openEuler" />
<!-- 数据库安装目录-->
<PARAM name="gaussdbAppPath" value="/opt/gaussdb/app" />
<!-- 日志目录-->
<PARAM name="gaussdbLogPath" value="/var/log/gaussdb" />
<!-- 临时文件目录-->
<PARAM name="tmpMppdbPath" value="/opt/gaussdb/tmp" />
<!-- 数据库工具目录-->
<PARAM name="gaussdbToolPath" value="/opt/huawei/wiswquery" />
<!-- 数据库core文件目录-->
<PARAM name="corePath" value="/opt/openGauss/corefile" />
<!-- 节点IP,与数据库节点名称列表一一对应 -->
<PARAM name="backIp1s" value="192.168.116.11"/>
<PARAM name="clusterType" value="single-inst"/>
</CLUSTER>
<!-- 每台服务器上的节点部署信息 -->
<DEVICELIST>
<!-- 节点1上的部署信息 -->
<DEVICE sn="1000001">
<!-- 节点1的主机名称 -->
<PARAM name="name" value="openEuler"/>
<!-- 节点1所在的AZ及AZ优先级 -->
<PARAM name="azName" value="AZ1"/>
<PARAM name="azPriority" value="1"/>
<!-- 节点1的IP,如果服务器只有一个网卡可用,将backIP1和sshIP1配置成同一个IP -->
<PARAM name="backIp1" value="192.168.116.11"/>
<PARAM name="sshIp1" value="192.168.116.11"/>
<!--节点个数、端口及数据所在目录-->
<PARAM name="dataNum" value="1"/>
<PARAM name="dataPortBase" value="26000"/>
<PARAM name="dataNode1" value="/opt/gaussdb/data/db1"/>
<PARAM name="dataNode1_syncNum" value="0"/>
</DEVICE>
</DEVICELIST>
</ROOT>
按[ESC]键,在底部命令栏输入:wq按【Enter】键保存并返回MobaXterm命令窗口。
图6 创建数据库服务器集群配置文件
2.Disable firewalld service
通过systemctl命令关闭防火墙。
[root@openEuler ~]# systemctl disable firewalld.service #使防火墙服务失效
Removed /etc/systemd/system/multi-user.target.wants/firewalld.service.
Removed /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
[root@openEuler ~]# systemctl stop firewalld.service #停止防火墙服务
[root@openEuler ~]# systemctl status firewalld.service #查看防火墙状态
图7 关闭防火墙
3.Disable SELINUX
配置/etc/selinux/config文件,使SELINUX失效,重启openEuler操作系统。
[root@openEuler ~]# echo "SELINUX=disabled" >> /etc/selinux/config
[root@openEuler ~]# cat /etc/selinux/config | grep "SELINUX=disabled"
SELINUX=disabled
[root@openEuler ~]# reboot #重启系统
图8 配置SELINUX失效
4.Configure encoding
设置系统字符集为UTF-8。
[root@openEuler ~]# echo "LANG=en_US.UTF-8" >> /etc/profile
或者
[root@openEuler ~]# vim /etc/profile
在文档末尾输入
LANG=en_US.UTF-8
[root@openEuler ~]# source /etc/profile
[root@openEuler ~]# cat /etc/profile
图9 设置系统字符集
5.Configure Timezone
通过date和hwclock命令验证时区。
[root@openEuler ~]# date -R
Fri, 07 Feb 2025 20:23:17 +0800
[root@openEuler ~]# hwclock
2025-02-07 20:23:33.996745+08:00
图10 验证时区
6.Close swap partition
通过swapoff命令关闭交换空间。swapoff 命令用于关闭指定的交换空间,使其不再被系统使用。当运行 swapoff 命令时,系统会将已经存储在交换空间中的数据尽可能地移回到物理内存中(如果物理内存足够的话),然后禁用该交换空间。
[root@openEuler ~]# swapoff -a
图11 关闭交换空间
7.在各数据库节点上,关闭RemoveIPC
RemoveIPC是Linux系统中systemd-logind服务的一个配置参数,用于控制当用户完全退出系统时是否删除该用户的所有IPC(进程间通信)对象。IPC 对象包括System V和POSIX的共享内存、信号量等。
当 RemoveIPC 设置为yes时,用户退出时会删除其所有 IPC 资源。这可能导致使用共享内存或信号量的应用程序(如数据库)出现异常,例如 openGauss数据库宕机。因此,在运行此类应用程序的系统上,通常需要关闭 RemoveIPC。关闭RemoveIPC可以避免因 IPC 资源被意外删除而导致的应用程序异常。
(1)修改/etc/systemd/logind.conf文件中的“RemoveIPC”值为“no”。
[root@openEuler ~]# vim /etc/systemd/logind.conf
RemoveIPC=no
#RuntimeDirectorySize=10%
#RuntimeDirectoryInodesMax=
RemoveIPC=no
#InhibitorsMax=8192
#SessionsMax=8192
(2)修改/usr/lib/systemd/system/systemd-logind.service文件中的“RemoveIPC”值为“no”
[root@openEuler ~]# echo "RemoveIPC=no" >>
/usr/lib/systemd/system/systemd-logind.service
(3)重新加载配置参数
[root@openEuler ~]# systemctl daemon-reload
[root@openEuler ~]# systemctl restart systemd-logind
(4)检查修改是否生效
[root@openEuler ~]# loginctl show-session | grep RemoveIPC
RemoveIPC=no
[root@openEuler ~]# systemctl show systemd-logind | grep RemoveIPC
RemoveIPC=no
图12 关闭RemoveIPC
8.Configure SSH Service
SSH 服务的配置文件是 /etc/ssh/sshd_config。通过编辑该文件,可以调整 SSH 的行为。配置sshd_config文件,允许远程登录系统。
[root@openEuler ~]# vim /etc/ssh/sshd_config
设置
Banner none
PermitRootLogin yes
[root@openEuler ~]# cat /etc/ssh/sshd_config | grep "Banner none"
Banner none
[root@openEuler ~]# cat /etc/ssh/sshd_config | grep " PermitRootLogin yes"
PermitRootLogin yes
图13 配置ssh服务
9.关闭HISTORY记录
编辑/etc/profile文件,关闭HISTORY记录。
[root@openEuler ~]# vim /etc/profile
设置
HISTSIZE=0
或者
[root@openEuler ~]# echo "HISTSIZE=0" >> /etc/profile
[root@openEuler ~]# source /etc/profile
图14 关闭HISTORY记录
10. 检查Python version
[root@openEuler ~]# python3 --version
或者
[root@openEuler ~]# python3 -V
Python 3.9.9
发现Python版本高于3.7.X,满足要求。
图15 检查Python版本
11.Configure sysctl.conf and performanc.sh
/etc/sysctl.conf 是 Linux 系统中用于配置和优化内核参数的文件。它包含了许多与网络性能、内存管理、文件系统和安全策略相关的参数。修改这些参数可以显著提升系统的性能和稳定性。
performance.sh 是一个用于优化系统性能的脚本,通常在安装某些高性能软件(如数据库)时使用。它会调整系统内核参数以提升性能。
通过sysctl,命令修改kernel.sem来配置sysctl.conf 和performanc.sh
[root@openEuler ~]# sysctl -w kernel.sem="250 85000 250 330"
kernel.sem = 250 85000 250 330
图18 配置sysctl.conf 和performanc.sh
12.openGauss software download
通过干wget 命令下载openGauss 安装包文件或者直接在openGauss.org网站下载openGauss-Server-6.0.0-openEuler22.03-x86_64.tar.bz2,然后上传到/opt/software/openGauss目录。
[root@openEuler ~]# cd $MY_SOFTWARE_DIRECTORY
[root@openEuler openGauss]# wget $OPENGAUSS_DOWNLOAD_URL ##需先注册并登录opnGuass.org网站
图19 下载openGauss 安装包文件
13.Uncompress openGauss Package and Modify directory permissions
通过tar命令解压缩openGauss-Server-6.0.0-openEuler22.03-x86_64.tar.bz2文件到openGauss文件夹。
[root@openEuler openGauss]# ls
openGauss-Server-6.0.0-openEuler22.03-x86_64.tar.bz2 [root@openEuler openGauss]# tar -jxvf openGauss-Server-6.0.0-openEuler22.03-x86_64.tar.bz2
图20 解压缩openGauss 安装包文件
通过rm命令删除openGauss-Server-6.0.0-openEuler22.03-x86_64.tar.bz2文件
[root@openEuler openGauss]# rm -f openGauss-Server-6.0.0-openEuler22.03-x86_64.tar.bz2
[root@openEuler openGauss]# ls
图20 删除openGauss 安装包文件
通过chown和chmod命令设置/opt/software/openGauss/属主和数组权限。
[root@openEuler openGauss]# chown -R ouser:ougrp /opt/software/openGauss/
[root@openEuler openGauss]# chmod -R 775 $MY_SOFTWARE_DIRECTORY
或者
[root@openEuler openGauss]# chmod g=rwx -R $MY_SOFTWARE_DIRECTORY
[root@openEuler openGauss]# chmod o=r-x -R $MY_SOFTWARE_DIRECTORY
[root@openEuler openGauss]# ls -l /opt/software/openGauss
图21 设置安装目录属主和属组权限
14.execute openGauss install
(1)切换到ouser用户
使用su命令切换到用户ouser。
[root@openEuler openGauss]# su – ouser
图22切换到ouser用户
(2)安装openGauss
切换到安装文件目录,执行install文件开始安装openGauss数据库。
[ouser@openEuler ~]$ cd $MY_SOFTWARE_DIRECTORY
[ouser@openEuler openGauss]$ ls
bin etc include jre lib share simpleInstall version.cfg
[ouser@openEuler openGauss]$ cd simpleInstall
[ouser@openEuler simpleInstall]$ ls
finance.sql install.sh README.md school.sql
sh install.sh
[ouser@openEuler simpleInstall]$ sh install.sh -w "February7@" -p 5432 && source ~/.bashrc
图23安装openGauss
最后出现[complete successfully]: You can start or stop the database server using:
gs_ctl start|stop|restart -D $GAUSSHOME/data/single_node -Z single_node
(3) 查看进程是否正常
安装执行完成后,使用ps和gs_ctl查看进程是否正常。
[ouser@openEuler simpleInstall]$ ps ux | grep gaussdb
ouser 2592 2.1 10.2 5864372 777648 ? Ssl 22:05 0:03 /opt/software/openGauss/bin/gaussdb -D /opt/software/openGauss/data/single_node
ouser 2868 0.0 0.0 22096 2348 pts/0 S+ 22:08 0:00 grep --color=auto gaussdb
图24查看进程是否正常
(4)查询数据库节点信息
[ouser@openEuler simpleInstall]$ gs_ctl query -D /opt/software/openGauss/data/single_node
HA state:
local_role : Normal
static_connections : 0
db_state : Normal
detail_information : Normal
Senders info:
No information
Receiver info:
No information
图25查询数据库节点信息
至此,openGauss数据库安装完成。
- 点赞
- 收藏
- 关注作者
评论(0)