openEuler22.03安装openGauss-5.0.2(企业版)
- 服务器名称:guess
- IP地址:192.168.195.131
- 系统首先配置网络,不配置的话无法使用网络,且第三方软件无法连上openGauss的库
1.安装准备
#查看主机名
[root@192 ~]# hostname
localhost
#设置主机名
[root@192 ~]# hostnamectl set-hostname gauss
# 重启
[root@192 ~] reboot
#重启后*
[root@node0 ~]# hostname
gauss
- 安装依赖包
yum install -y gcc-c++ pcre pcre-devel zlib zlib-devel openssl openssl-devel
dnf -y install libaio-devel flex bison ncurses-devel glibc-devel patch readline-devel libnsl python3
3.关闭防火墙
- 目前仅支持在防火墙关闭的状态下进行安装。安装好后,可以把防火墙打开
systemctl disable firewalld.service
systemctl stop firewalld.service
#查看防火墙状态
#1.active(running),开启中
#2.firewalld.关闭中
systemctl status firewalld
4.设置SELINUX
vim /etc/selinux/config
SELINUX=disabled
5.设置操作系统字符集编码
LANG=en_US.UTF-8
echo "LANG=en_US.UTF-8" >> /etc/profile
source /etc/profile
echo $LANG
6.关闭swap交换内存(可选)
- 关闭swap交换内存是为了保障数据库的访问性能,避免把数据库的缓冲区内存淘汰到磁盘上。如果服务器内存比较小,内存过载时,可打开swap交换内存保障正常运行。
- 关闭
swapoff -a
- 开启
swapon -a
7.关闭RemoveIPC
(1)方式一:
在各数据库节点上,关闭RemoveIPC.
-
删除
sed -i '/^RemoveIPC/d' /etc/systemd/logind.conf sed -i '/^RemoveIPC/d' /usr/lib/systemd/system/systemd-logind.service
-
传入参数
echo "RemoveIPC=no" >> /etc/systemd/logind.conf echo "RemoveIPC=no" >> /usr/lib/systemd/system/systemd-logind.service
(2)方式二:
- 使用VIM打开logind.conf文件
vim /etc/systemd/logind.conf
修改“RemoveIPC”值为“no”
RemoveIPC=no
- 使用VIM打开systemd-logind.service文件
vim /usr/lib/systemd/system/systemd-logind.service
修改“RemoveIPC”值为“no”
RemoveIPC=no
8.重新加载配置参数
systemctl daemon-reload
systemctl restart systemd-logind
9.检查修改是否生效
loginctl show-session | grep RemoveIPC
systemctl show systemd-logind | grep RemoveIPC
默认安装的操作系统,2个参数都是RemoveIPC=no,所以这2个参数不用修改,不过需要先查看下参数值,如果不是no,那就手动改下。
10.设置网卡MTU值
- 将各数据库节点的网卡MTU值设置为相同大小。
执行如下命令查询服务器的网卡名称。
ifconfig
- 使用如下命令将各数据库节点的网卡MTU值设置为相同大小。MTU值推荐8192,要求不小于1500。
ifconfig ens33 mtu 8192
11.关闭HISTORY记录
- 为避免指令历史记录安全隐患,需关闭各主机的history指令。
- 修改根目录下/etc/profile文件。
vim /etc/profile
- 设置HISTSIZE值为0。例如,系统中HISTSIZE默认值为1000,将其修改为0。
HISTSIZE=0
-
保存/etc/profile。
-
设置/etc/profile生效。
source /etc/profile
12. 设置root用户远程登录
- 修改PermitRootLogin配置,允许用户远程登录。(新安装的系统,默认是打开的)
- 打开sshd_config文件
vim /etc/ssh/sshd_config
- 修改权限配置,可以使用以下两种方式实现:
注释掉“PermitRootLogin no”。
#PermitRootLogin no
- 将“PermitRootLogin”改为“yes”。
PermitRootLogin yes
13.配置Banner
- 修改Banner配置,去掉连接到系统时,系统提示的信息。
信息会干扰安装时远程操作的返回结果,影响安装正常执行。
- 编辑sshd_config文件。
vim /etc/ssh/sshd_config
- 修改Banner配置,注释掉“Banner”所在的行。
#Banner XXXX
- 执行:wq保存并退出编辑页面。
使用如下命令使设置生效。
systemctl restart sshd.service
- 以root用户身份重新登录。
ssh xxx.xxx.xxx.xxx
二:获取安装包
官方安装包下载:https://opengauss.org/zh/download/
查看系统版本的指令:
cat /etc/os-release
三:安装
1. 创建用户和用户组
-
为了实现安装过程中安装账户权限最小化,及安装后openGauss的系统运行安全性,安装脚本在安装过程中会自动按照用户指定内容创建安装用户,并将此用户作为后续运行和维护openGauss的管理员账户。
-
用户组:dbgrp
初始化安装环境时,由-G参数所指定的安装用户所属的用户组。
该用户组如果不存在,则会自动创建,也可提前创建好用户组。
在执行gs_preinstall脚本时会检查权限。
gs_preinstall脚本会自动赋予此组中的用户对安装目录、数据目录的访问和执行权限。
- 用户:omm
初始化安装环境时,由-U参数所指定和自动创建的操作系统用户。
此用户具备数据库的最高操作权限,此用户初始密码由用户指定。
从安全性考虑,用户所属组是dbgrp
操作:
# 创建用户组
groupadd dbgrp
# 创建用户
useradd -g dbgrp omm
# 设置密码
echo 'admin@9000' | passwd --stdin omm
- 创建目录,并把文件上传到/opt/software 最后赋予权限,创建xml文件,
mkdir -p /opt/software
chmod 755 -R /opt/software
2. 创建xml文件
- 单节点配置文件
vi /opt/software/og.xml
<?xml version="1.0" encoding="UTF-8"?>
<ROOT>
<!-- openGauss整体信息 -->
<CLUSTER>
<!-- 数据库名称 -->
<PARAM name="clusterName" value="dbCluster" />
<!-- 数据库节点名称(hostname) -->
<PARAM name="nodeNames" value="gauss" />
<!-- 数据库安装目录-->
<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="192.168.195.131"/>
</CLUSTER>
<!-- 每台服务器上的节点部署信息 -->
<DEVICELIST>
<!-- 节点1上的部署信息 -->
<DEVICE sn="node1_hostname">
<!-- 节点1的主机名称 -->
<PARAM name="name" value="gauss"/>
<!-- 节点1所在的AZ及AZ优先级 -->
<PARAM name="azName" value="AZ1"/>
<PARAM name="azPriority" value="1"/>
<!-- 节点1的IP,如果服务器只有一个网卡可用,将backIP1和sshIP1配置成同一个IP -->
<PARAM name="backIp1" value="192.168.195.131"/>
<PARAM name="sshIp1" value="192.168.195.131"/>
<!--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>
-
gauss :为主机名
-
192.168.195.130:主机IP
3. 解压安装包
cd /opt/software
tar -zxvf openGauss-5.0.2-openEuler-64bit-all.tar.gz
- 继续解压安装包openGauss-5.0.0-openEuler-64bit-om.tar.gz
tar -zxvf openGauss-5.0.2-openEuler-64bit-om.tar.gz
4. 设置/etc/hosts
配置了几个ip都要对应到hosts中
[root@client1 software]# vi /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.195.131 gauss
四. 开始安装
1. 执行预安装脚本
- 进入命令目录
[root@client1 software]# cd /opt/software/script/
- 执行命令
./gs_preinstall -U omm -G dbgrp -X /opt/software/og.xml
- 切换用户
必须使用上面预安装指定的用户进行安装
su – omm
- 开始安装
使用XML配置文件
需要输入密码,密码要求:
最少包含8个字符。
不能和用户名、当前密码(ALTER)、或当前密码反序相同。
至少包含大写字母(A-Z)、小写字母(a-z)、数字、非字母数字字符(限定为~!@#$%^&*()-_=+|[{}];:,<.>/?)四类字符中的三类字符。
gs_install -X /opt/software/og.xml
- 启动数据库,并查询状态
gs_om -t start
执行如下命令检查数据库状态是否正常,“cluster_state ”显示“Normal”表示数据库可正常使用。
gs_om -t status
-
数据库安装完成后,默认生成名称为postgres的数据库。第一次连接数据库时可以连接到此数据库。
其中postgres为需要连接的数据库名称,15400为数据库主节点的端口号,即XML配置文件中的dataPortBase的值。请根据实际情况替换。
gsql -d postgres -p 15400
连接成功后,系统显示类似如下信息表示数据库连接成功。
gsql ((openGauss 5.0.2 build 48a25b11) compiled at 2024-05-14 10:26:01 commit 0 last mr ) Non-SSL connection (SSL connection is recommended when requiring high-security) Type "help" for help. openGauss=# \l # 查询数据库命令 List of databases Name | Owner | Encoding | Collate | Ctype | Access privileges -----------+-------+----------+-------------+-------------+------------------- finance | omm | UTF8 | en_US.UTF-8 | en_US.UTF-8 | postgres | omm | UTF8 | en_US.UTF-8 | en_US.UTF-8 | school | omm | UTF8 | en_US.UTF-8 | en_US.UTF-8 | template0 | omm | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =c/omm + | | | | | omm=CTc/omm template1 | omm | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =c/omm + | | | | | omm=CTc/omm (5 rows) openGauss=# \q # 退出数据库命令