在openeuler上安装opengauss数据库
John Doe在openeuler安装opengauss数据库
本文章采用的openEuler-20.03-LTS-x86_64系统和openGauss-All-6.0.0-openEuler20.03-x86数据库,以安装gauss数据库为主,安装openEuler只做简单介绍
一.准备工作
- 下载opengauss数据库安装包
- 创建数据库文件夹
安装openEuler成功后,将下载下的opengauss上传到openEuler里面,建议上传到根目录下,方便后续命令操作
目前仅支持在防火墙关闭的状态下进行安装
修改“SELINUX”的值“disabled”,执行**:wq**保存并退出修改。并使用reboot重启虚拟机
检查防火墙是否关闭
1
| systemctl status firewalld
|
关闭防火墙
1 2
| systemctl disable firewalld.service systemctl stop firewalld.service
|
关闭swap交换内存
关闭RemoveIPC
1
| vim /etc/systemd/logind.conf
|
修改“RemoveIPC”值为“no”
1
| vim /usr/lib/systemd/system/systemd-logind.service
|
修改“RemoveIPC”值为“no”,如果没有这一行添加即可,添加内容如下
重新加载配置参数
1 2
| systemctl daemon-reload systemctl restart systemd-logind
|
检查修改是否生效
1 2
| loginctl show-session | grep RemoveIPC systemctl show systemd-logind | grep RemoveIPC
|
通过以下命令创建数据库安装文件夹
1
| mkdir -p /opt/soft/opengauss
|
对该文件夹修改操作权限,防止后续权限不足造成结果失败
创建数据库部署文件夹
修改权限
使用以下命令将下载包移动到目的文件夹下
1
| mv openGauss-All-6.0.0-openEuler20.03-x86_64.tar.gz /opt/soft/opengauss
|
将压缩包进行解压
1
| tar -zxvf openGauss-All-6.0.0-openEuler20.03-x86_64.tar.gz
|
安装辅助安装包之前还是需要配置一下yum源的,这里介绍如何配置华为云
1 2
| cd /etc/yum.repos.d rm -rf *
|
对于aarch64架构执行这个
1
| wget -O /etc/yum.repos.d/openEulerOS.repo https://repo.huaweicloud.com/repository/conf/openeuler_aarch64.repo
|
对于X86架构执行这个
1 2
| wget -O /etc/yum.repos.d/openEulerOS.repo https://repo.huaweicloud.com/repository/conf/openeuler_x86_64.repo
|
1 2
| yum clean all yum makecache
|
执行之后,开始安装辅助软件
1
| yum install -y bzip2 libaio-devel flex bison ncurses-devel glibc-devel patch
|
二.配置安装环境文件
进入opengauss目录下再次解压两个压缩包
1 2
| tar -zxvf openGauss-CM-6.0.0-openEuler20.03-x86_64.tar.gz tar -zxvf openGauss-OM-6.0.0-openEuler20.03-x86_64.tar.gz
|
解压完成之后,在opengauss下会出现script文件夹,进入该文件夹
检查是否存在clusterconfig.xml文件,提示:在opengauss6.0版本下,此文件叫做cluster_config.xml,后续涉及该文件的命令均要修改该文件名称,或者现在将该空文件删除,使用以下命令创建一个
使用以下命令修改用户名为opengauss,提示:不修改也可以,但是后续的clusterconfig.xml文件下的以下几行需要修改
1
| sudo hostnamectl set-hostname opengauss
|
将这几行的value的值改成你的用户名和你所在的ip
使用以下命令查看用户名

再次使用hostname命令查看是否修改成功
修改文件内容
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
| <?xml version="1.0" encoding="UTF-8"?> <ROOT> <!-- openGauss整体信息 --> <CLUSTER> <PARAM name="clusterName" value="dbCluster" /> <PARAM name="nodeNames" value="opengauss" /> <PARAM name="backIp1s" value="192.168.211.129"/> <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" /> <PARAM name="corePath" value="/opt/huawei/corefile" /> <PARAM name="clusterType" value="single-inst"/> </CLUSTER> <DEVICELIST> <!-- node1上的节点部署信息 --> <DEVICE sn="1000001"> <PARAM name="name" value="opengauss"/> <PARAM name="azName" value="AZ1"/> <PARAM name="azPriority" value="1"/> <!-- 如果服务器只有一个网卡可用,将backIP1和sshIP1配置成同一个IP --> <PARAM name="backIp1" value="192.168.211.129"/> <PARAM name="sshIp1" value="192.168.211.129"/> <!--dbnode--> <PARAM name="dataNum" value="1"/> <PARAM name="dataPortBase" value="26000"/> <PARAM name="dataNode1" value="/opt/huawei/install/data/db1"/> </DEVICE> </DEVICELIST> </ROOT>
|
1
| vi /etc/profile.d/performance.sh
|
用#注释sysctl -w vm.min_free_kbytes=112640 &> /dev/null,保存退出
配置LD_LIBRARY_PATH环境变量
1
| export LD_LIBRARY_PATH=/opt/soft/opengauss/script/gspylib/clib:$LD_LIBRARY_PATH
|
三.配置安装
进入script目录,执行gs_preinstall:
1 2
| cd script/ ./gs_preinstall -U omm -G dbgrp -X /opt/soft/opengauss/script/clusterconfig.xml
|
中间会让你输几次yes,后面密码设置的太简单也是不行的,建议大小写数字特殊字符均有
可能会遇到以下问题导致安装不成功的,可以执行下面的命令

1 2 3 4 5
| cat /proc/sys/kernel/sem 上面命令执行过后,会有四个数字,按顺序替换下面的四个数字就可以 echo "500 641280 500 500" > /proc/sys/kernel/sem 再次执行 ./gs_preinstall -U omm -G dbgrp -X /opt/soft/opengauss/script/clusterconfig.xml
|
以end deploy..结尾那就是安装ok啦
四.执行安装
使用omm用户登录
执行安装
1 2
| cd /opt/soft/opengauss/script/ gs_install -X /opt/soft/opengauss/script/clusterconfig.xml
|
在进行gs_install -X /opt/soft/opengauss/script/clusterconfig.xml这一步的时候如果shared_buffers太大会导致报错,如下图所示

遇到这种情况,进行以下操作,如果没有跳过即可
首先打开vmware查看自己给虚拟机分配的内存大小

定位postgresql.conf这个文件
1
| cd /opt/huawei/install/data/db1
|
该文件夹下有postgresql.conf文件,使用以下命令查看shared_buffers分配大小

原来我的shared_buffers是1G大小,后面调整到512M还是失败,最后256M成功跑通这一步
如果前面你的内存大小是4G,这里设置256MB,内存2G就设置128MB,但是内存设置1G,我这边跑一直报错!!!
配置更改命令如下(注意这里不能使用gs_guc reload,因为openGauss不属于启动状态,使用reload配置更改会失败,使用set就可以)
调整shared_buffers大小命令,修改MB前的的数字就可以
1
| gs_guc set -N all -I all -c "shared_buffers = 512MB"
|
再次执行以下命令
1 2
| cd /opt/soft/opengauss/script/ gs_install -X /opt/soft/opengauss/script/clusterconfig.xml
|

成功安装,执行以下命令查看数据库状态
1
| gs_om -t status --detail
|

进入数据库命令
1
| gsql -d postgres -p 26000
|

使用\q退出数据库
如果你的虚拟机是动态ip,在如果你没有关机前关虚拟机的好习惯,那你就要遭老罪了,下一次启动数据库可能就会提示你

解决办法:
查看你当前的虚拟机ip
1 2 3
| cd /opt/soft/opengauss/script vi clusterconfig.xml 修改之前的那几行ip换成你现在的ip地址
|
修改另外一个文件
1 2 3
| cd /opt/huawei/install/data/db1 vi postgresql.conf 将68和72行ip改成现在的ip,就好啦
|

openGauss常用命令
| gs_om -t start |
开启 |
| gs_om -t stop |
停止 |
| gs_om -t restart |
重启 |
| gs_om -t status –detail |
详细状态 |
| gsql -d postgres -p 26000 |
登录数据库 |
参考文档:
1.https://bbs.huaweicloud.com/blogs/190392
2.https://wenku.csdn.net/answer/667560ebdfc14c78bf4568f3d10d4fdf#:~:text=opengauss%E4%B8%AD%E7%9A%84postgresql.conf%E5%92%8Cpg_hba.conf%E6%80%8E%E4%B9%88%E6%89%BE%201%20%E6%89%93%E5%BC%80opengauss%E6%95%B0%E6%8D%AE%E5%BA%93%E7%9A%84%E5%AE%89%E8%A3%85%E7%9B%AE%E5%BD%95%E3%80%82,2%20%E6%89%BE%E5%88%B0data%E7%9B%AE%E5%BD%95%EF%BC%8C%E8%BF%99%E4%B8%AA%E7%9B%AE%E5%BD%95%E4%BF%9D%E5%AD%98%E4%BA%86opengauss%E6%95%B0%E6%8D%AE%E5%BA%93%E7%9A%84%E6%89%80%E6%9C%89%E6%95%B0%E6%8D%AE%E6%96%87%E4%BB%B6%E5%92%8C%E9%85%8D%E7%BD%AE%E6%96%87%E4%BB%B6%E3%80%82%203%20%E5%9C%A8data%E7%9B%AE%E5%BD%95%E4%B8%AD%EF%BC%8C%E6%82%A8%E5%8F%AF%E4%BB%A5%E6%89%BE%E5%88%B0postgresql.conf%E5%92%8Cpg_hba.conf%E6%96%87%E4%BB%B6%E3%80%82
3.https://docs-opengauss.osinfra.cn/zh/docs/6.0.0/docs/InstallationGuide/InstallationGuide.html
4.https://blog.csdn.net/qq_37251994/article/details/130360755
5.https://blog.csdn.net/vanilla_he/article/details/79848142
6.https://support.huaweicloud.com/intl/zh-cn/errorcode-dws/dws_08_0556.html
7.https://blog.csdn.net/Tui_GuiGe/article/details/125716831#:~:text=%E6%89%A7%E8%A1%8C%E5%A6%82%E4%B8%8B%E5%91%BD%E4%BB%A4%2C%20%E4%B8%8B%E8%BD%BD%E6%96%B0%E7%9A%84openEulerOS.repo%E5%88%B0%2Fetc%2Fyum.repos.d%2F%E7%9B%AE%E5%BD%95%E4%B8%8B.%20for%20aarch64%20%EF%BC%9A%20for%20x86%EF%BC%9A,2%E3%80%81%E6%89%A7%E8%A1%8Cyum%20clean%20all%E6%B8%85%E9%99%A4%E5%8E%9F%E6%9C%89yum%E7%BC%93%E5%AD%98%E3%80%82%203%E3%80%81%E6%89%A7%E8%A1%8Cyum%20makecache%E7%94%9F%E6%88%90%E6%96%B0%E7%9A%84%E7%BC%93%E5%AD%98%E3%80%82%20%E4%BD%BF%E7%94%A8%20nmcli%20%E5%91%BD%E4%BB%A4%E9%85%8D%E7%BD%AE%E7%9A%84%E7%BD%91%E7%BB%9C%E9%85%8D%E7%BD%AE%E5%8F%AF%E4%BB%A5%E7%AB%8B%E5%8D%B3%E7%94%9F%E6%95%88%E4%B8%94%E7%B3%BB%E7%BB%9F%E9%87%8D%E5%90%AF%E5%90%8E%E9%85%8D%E7%BD%AE%E4%B9%9F%E4%B8%8D%E4%BC%9A%E4%B8%A2%E5%A4%B1%E3%80%82
8.https://blog.csdn.net/qq_40220309/article/details/122680909