openGauss极简版安装教程可以参考博客:openGauss安装教程(最新最全)_opengauss如何下载-优快云博客
本文使用的操作系统为openEuler-22.03,需要的安装教程的可以参考博客:http://t.csdnimg.cn/onjAn
系统界面安装必须先安装ukui,才能安装dde,ukui界面无法用root用户登录,需要安装系统时先创建用户,命令如下
# 先更新系统
yum update -y
#更新完成后清楚安装包
yum clean all
# ukui界面安装
yum install -y ukui
# dde界面安装
yum install -y dde
# 切换图形界面启动
systemctl set-default graphical.target
# 切换命令行界面启动
systemctl set-default multi-user.target
一、系统环境设置
1.关闭防火墙
# 查看状态
# 若防火墙状态显示为active (running),则表示防火墙未关闭;
# 若防火墙状态显示为inactive (dead),则无需再关闭防火墙。
systemctl status firewalld
# 关闭
systemctl stop firewalld
# 永久关闭
systemctl disable firewalld
2.安装vim、tar
yum install -y vim
yum install -y tar
3.关闭SELINUX
将 SELINUX=enforcing 改为 SELINUX=disabled
# 使用VIM打开config文件。
vim /etc/selinux/config
# 修改“SELINUX”的值“disabled”,执行:wq保存并退出修改。
SELINUX=disabled
4.设置hostname
hostname
# 设置hostname为数据库节点名称(第一个命令设置报错,使用第二个)
hostnamectl hostname db1
hostnamectl set-hostname db1
5.查看MTU并设置为15000
ip link show dev eth0
ip link set dev eth0 mtu 15000
6.关闭交换内存
swapoff -a
7.关闭THP
# 查看THP状态,如果结果为[always] madvise never,则表示使用THP;如果结果为always madvise [never],则表示不使用THP
cat /sys/kernel/mm/transparent_hugepage/enabled
# 查看THP的详细配置信息
cat /sys/kernel/mm/transparent_hugepage/defrag
# 关闭THP
vim /etc/rc.d/rc.local
# 输入下面命令后复制下面添加内容,这会禁用自动缩进,并让你可以自由粘贴代码。
:set paste
# 添加以下内容
if test -f /sys/kernel/mm/transparent_hugepage/enabled;
then
echo never > /sys/kernel/mm/transparent_hugepage/enabled
fi
if test -f /sys/kernel/mm/transparent_hugepage/defrag;
then
echo never > /sys/kernel/mm/transparent_hugepage/defrag
fi
# 保存退出,赋予rc.local文件执行权限
chmod +x /etc/rc.d/rc.local
# 重启系统
reboot
# 重启系统,检查THP是否被禁用
cat /sys/kernel/mm/transparent_hugepage/enabled
cat /sys/kernel/mm/transparent_hugepage/defrag
二、下载安装包
1.创建数据库目录,进入目录下,下载安装包,具体命令如下
#创建文件夹
mkdir -p /opt/software/openGauss
cd /opt/software/openGauss
#下载安装包
wget https://opengauss.obs.cn-south-1.myhuaweicloud.com/6.0.0/openEuler22.03/x86/openGauss-All-6.0.0-openEuler22.03-x86_64.tar.gz
上面安装的是如下版本,官网地址
2.解压文件并授权
tar -zxvf openGauss-All-6.0.0-openEuler22.03-x86_64.tar.gz
tar -zxvf openGauss-OM-6.0.0-openEuler22.03-x86_64.tar.gz
#授权
chmod 755 -R /opt/software
三、安装openGauss
1.创建cluster_config.xml文件
vim cluster_config.xml
# 输入下面命令后复制xml内容,这会禁用自动缩进,并让你可以自由粘贴代码。
:set paste
<?xml version="1.0" encoding="UTF-8"?>
<ROOT>
<!-- openGauss整体信息 -->
<CLUSTER>
<!-- 数据库名称 -->
<PARAM name="clusterName" value="dbCluster" />
<!-- 数据库节点名称(hostname) -->
<PARAM name="nodeNames" value="db1" />
<!-- 数据库安装目录-->
<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="172.29.24.198"/>
</CLUSTER>
<!-- 每台服务器上的节点部署信息 -->
<DEVICELIST>
<!-- 节点1上的部署信息 -->
<DEVICE sn="db1">
<!-- 节点1的主机名称 -->
<PARAM name="name" value="db1"/>
<!-- 节点1所在的AZ及AZ优先级 -->
<PARAM name="azName" value="AZ1"/>
<PARAM name="azPriority" value="1"/>
<!-- 节点1的IP,如果服务器只有一个网卡可用,将backIP1和sshIP1配置成同一个IP -->
<PARAM name="backIp1" value="172.29.24.198"/>
<PARAM name="sshIp1" value="172.29.24.198"/>
<!--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>
2.执行安装
cd /opt/software/openGauss/script
./gs_preinstall -U omm -G dbgrp -X /opt/software/openGauss/cluster_config.xml
会询问是否创建omm用户,输入yes并输入omm用户的密码继续安装
使用自动创建好的omm用户登陆,然后执行
su - omm
gs_install -X /opt/software/openGauss/cluster_config.xml --gsinit-parameter="--locale=zh_CN.utf8"
输入数据库密码继续,如下图结束后安装完成
3.安装后验证
查看进程
ps -ef | grep gauss
查看数据库状态
gs_om -t status
连接数据库
gsql -d postgres -p 15400
4.管理命令归纳
# 启动openGauss
gs_om -t start
# 停止openGauss
gs_om -t stop
# 重启openGauss
gs_om -t restart
# 查看数据库启动状态
gs_om -t status --detail
四、配置远程连接openGauss
1.文件 pg_hba.conf 修改
vim /opt/huawei/install/data/dn/pg_hba.conf
在IPv4 local connections下添加:host all all 0.0.0.0/0 md5
输入 :wq! 退出
2.文件 postgresql.conf 修改
修改监听地址和加密方式
vim /opt/huawei/install/data/dn/postgresql.conf
listen_addresses值设置为*,快捷查找为/listen_addresses,enter
password_encryption_type值设为0,即为md5,快捷查找为/password_encryption_type,enter
3.重启服务
gs_om -t restart
4.创建远程连接角色
# 登录数据库
gsql -d postgres -p 15400
# 删除用户
drop user testuser;
# 创建用户
CREATE USER testuser WITH Sysadmin IDENTIFIED BY 'test.123456';
# 给用户授权
GRANT SELECT,INSERT,UPDATE,DELETE ON ALL TABLES IN SCHEMA public TO testuser;
# 查看用户列表
\du
# 查看用户testuser
\du testuser
5.防火墙开放端口
防火墙为未启动状态,略过此步骤
# 查看firewalld状态
systemctl status firewalld
# 把端口加入防火墙
firewall-cmd --zone=public --add-port=15400/tcp --permanent
# 重新加载防火墙
systemctl reload firewalld
6.Navicat连接
打开Navicat,新建PostgreSQL连接方式
在“新建连接(PostgreSQL)”窗口中,输入连接名、主机IP地址、端口号、用户名、密码等参数,端口号默认为5432,根据实际情况动态调整
如果连接不通,重启数据库服务后删除用户再次创建
五、配置openGauss开机启动
1.编辑openGauss服务配置文件
vim /etc/systemd/system/opengauss.service
添加如下内容
# 定义单元
[Unit]
# 服务的描述信息,说明该服务是OpenGauss数据库服务器
Description=OpenGauss Database Server
# 在syslog和network目标之后启动
After=syslog.target network.target
# 定义服务
[Service]
# 服务类型为forking,表示服务将在启动时派生一个子进程,后台运行
Type=forking
# 以omm用户身份运行服务
User=omm
# 以dbgrp用户组身份运行服务
Group=dbgrp
# 设置GPHOME环境变量为OpenGauss的安装路径
Environment=GPHOME=/opt/huawei/install/om
# 设置PGDATA环境变量为OpenGauss数据目录路径
Environment=PGDATA=/opt/huawei/install/data/dn
# 设置LD_LIBRARY_PATH环境变量,指定动态链接库路径
Environment=LD_LIBRARY_PATH=$GPHOME/lib:$LD_LIBRARY_PATH
# 设置GAUSSHOME环境变量为OpenGauss的程序路径
Environment=GAUSSHOME=/opt/huawei/install/app
# 启动服务的命令
ExecStart=/opt/huawei/install/om/script/gs_om -t start
# 停止服务的命令
ExecStop=/opt/huawei/install/om/script/gs_om -t stop
# 重新加载服务的命令
ExecReload=/opt/huawei/install/om/script/gs_om -t restart
# 配置服务的安装属性
[Install]
# 系统运行在多用户模式下
WantedBy=multi-user.target
# 系统运行在图形界面模式下
WantedBy=graphical.target
:wq 保存并退出编辑器。
2.加载 systemd 配置并测试
systemctl daemon-reload
# 启用服务
systemctl enable opengauss.service
# 启动服务
systemctl start opengauss.service
# 查看服务状态
systemctl status opengauss.service
说明:
- opengauss.service - OpenGauss Database Server: 显示服务的名称和描述。
- Loaded: loaded (/etc/systemd/system/opengauss.service; enabled; vendor preset: disabled): 显示服务单元的加载状态。(/etc/systemd/system/opengauss.service)显示服务单元的路径,并且已经被启用 (enabled),但并非由系统的默认预设 值(disabled)。
- Active: active (running): 显示服务的活动状态。在这里,服务是 “active (running)”
- Process: 872 ExecStart=/opt/huawei/install/om/script/gs_om -t start (code=exited, status=0/SUCCESS): 显示服务启动过程中相关的进程信息。在这里,它告诉你服务的启动命令是/opt/huawei/install/om/script/gs_om -t start,并且该进程已经成功启动 (code=exited, status=0/SUCCESS)。
- Main PID: 3441 (gaussdb): 显示服务的主进程 ID 和进程名称。在这里,主进程 ID 是 3441,进程名称是 gaussdb。
- Tasks: 36 (limit: 21617): 显示服务的任务数量,表示服务的工作单元数量。
- Memory: 1.3G: 显示服务占用的内存量。
- CGroup: /system.slice/opengauss.service: 显示服务所属的控制组。
- └─ 3441 /opt/huawei/install/app/bin/gaussdb -D /opt/huawei/install/data/dn: 显示主进程及其相关的命令行参数。
3.管理命令归纳
# 启动服务
systemctl start opengauss.service
# 关闭服务
systemctl stop opengauss.service
# 重启服务
systemctl restart opengauss.service
# 查看服务状态
systemctl status opengauss.service
# 启用服务——启用开机自启动服务
systemctl enable opengauss.service
# 禁用服务——禁用开机自启动服务
systemctl disable opengauss.service
六、卸载openGauss
执行下面命令卸载openGauss,卸载完成后删除/opt/software/openGauss文件夹
# 使用gs_uninstall卸载
gs_uninstall --delete-data
# 使用gs_postuninstall进行清理环境
cd /opt/software/openGauss/script
./gs_postuninstall -U omm -X /opt/software/openGauss/cluster_config.xml --delete-user --delete-group
unset MPPDB\_ENV\_SEPARATE\_PATH
参考:
云服务器部署企业版openGauss_the thp service status realvalue 'enabled' expecte-优快云博客
【openGauss】openEuler 22.03 LTS 安装了openGauss数据库后yum不可用 - 墨天轮