CentOS 7.9 安装 openGauss 2.1.0 之剥茧抽丝

CentOS 7.9 安装 openGauss 2.1.0 之剥茧抽丝

问天的天问 2021/12/23

本文是在参考官方的安装文档后,提取总结出的关键安装步骤。

[1] 基础环境安装

复制代码
# timedatectl set-timezone Asia/Shanghai
# hostnamectl set-hostname gauss01

# nmcli con mod enp0s3 ipv4.method manual ipv4.address ***.***.***.***31/24
# nmcli con mod enp0s3 ipv4.gateway ***.***.***.***
# nmcli con mod enp0s3 ipv4.dns ***.***.***.***
# nmcli con mod enp0s3 connection.autoconnect yes

[2] Disable SElinux

复制代码
# sed -i 's@\(^SELINUX=\).*@\1disabled@g' /etc/selinux/config

[3] Disable Firewall

复制代码
# systemctl disable firewalld

[4] Disable Transparent HugePages

复制代码
# sed -i '/linux16.*$/s//& transparent_hugepage=never/g' /boot/grub2/grub.cfg

Reboot and Confirm
# cat /sys/kernel/mm/transparent_hugepage/enabled
always madvise [never]

[5] 文件句柄设置

复制代码
# cat >> /etc/security/limits.conf << EOF

*`echo -e "\t"`soft`echo -e "\t"`nofile`echo -e "\t"`1000000
*`echo -e "\t"`hard`echo -e "\t"`nofile`echo -e "\t"`1000000
EOF

[6] 网卡设置

在网卡配置文件中最后一行添加 MTU=8192

复制代码
# cat /etc/sysconfig/network-scripts/ifcfg-enp0s3
......
MTU=8192

[7] 修改默认版本号

复制代码
# cat /etc/redhat-release
CentOS Linux release 7.9.2009 (Core)
修改为
CentOS Linux release 7.6.1810 (Core)

[8] 系统参数

在内核方面,官方给出的建议值基本上与系统 CentOS 7.9 的默认值相同,不相同的只有 4 项,如下:

  • net.ipv4.tcp_retries1
  • net.ipv4.tcp_syn_retries
  • net.ipv4.ip_local_port_range
  • vm.overcommit_ratio

根据实际情况判定是否需要修改。

[9] 安装 python

复制代码
# yum install -y python36

[10] 安装软件包

官方建议软件包

复制代码
# yum install -y libaio-devel flex bison ncurses-devel glibc-devel patch redhat-lsb readline-devel

个人建议软件包

复制代码
# yum install -y bzip2 net-tools lrzsz

[11] 关闭 RemoveIPC

CentOS 默认关闭,无需要配置。

[12] 创建组和用户

组和用户都可以不用提前创建,在安装时会自动创建。

[13] 解压安装包

复制代码
# mkdir -p /opt/software/openGauss
# chmod 755 -R /opt/software
# cd /opt/software/openGauss

上传源码 openGauss-2.1.0-CentOS-64bit-all.tar.gz 并解压
# tar -zxvf openGauss-2.1.0-CentOS-64bit-all.tar.gz
# tar -zxvf openGauss-2.1.0-CentOS-64bit-om.tar.gz

[14] 编辑配置脚本

复制代码
# cp script/gspylib/etc/conf/cluster_config_template.xml cluster_config.xml
# vi /opt/software/openGauss/cluster_config.xml
<?xml version="1.0" encoding="utf-8"?>
<ROOT>
<CLUSTER>
<PARAM name="clusterName" value="dbCluster" />
<PARAM name="nodeNames" value="gauss01"/>
<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="backIp1s" value="***.***.***.***71"/>
</CLUSTER>

<DEVICELIST>
<DEVICE sn="node1_hostname">
<PARAM name="name" value="gauss01"/>
<PARAM name="azName" value="AZ1"/>
<PARAM name="azPriority" value="1"/>
<PARAM name="backIp1" value="***.***.***.***71"/>
<PARAM name="sshIp1" value="***.***.***.***71"/>
<!-- dn -->
<PARAM name="dataNum" value="1"/>
<PARAM name="dataPortBase" value="15400"/>
<PARAM name="dataNode1" value="/opt/huawei/install/data/dn1"/>
<PARAM name="dataNode1_syncNum" value="0"/>
</DEVICE>

</DEVICELIST>
</ROOT>

根据实际情况进行相应修改。

[15] 执行安装和初始化

以 root 用户安装,安装脚本自行创建 dbgrp 组和 omm 用户

复制代码
# cd script
# python3 gs_preinstall -U omm -G dbgrp -X /opt/software/openGauss/cluster_config.xml

以 omm 用户初始化数据库

复制代码
# chown -R omm:dbgrp /opt/software/openGauss
# su - omm
$ gs_install -X /opt/software/openGauss/cluster_config.xml

初始化成功后连接数据库

复制代码
$ gsql -d postgres -p 15400
gsql ((openGauss 2.1.0 build 590b0f8e) compiled at 2021-09-30 14:29:04 commit 0 last mr )
Non-SSL connection (SSL connection is recommended when requiring high-security)
Type "help" for help.

openGauss=#

其中,postgres 为需要连接的数据库名称,15400 为数据库节点的端口号,即 cluster_config.xml 配置文件中的 dataPortBase 的值。

[16] 卸载 openGauss

复制代码
# su - omm
$ gs_uninstall --delete-data
命令卸载并不全面,还需要手工删除,也可不经命令卸载直接手工删除。
# userdel -r omm
# groupdel dbgrp
# rm -rf /opt/software /opt/huawei
# rm -rf /var/log/omm
相关推荐
DD_陈东东18 分钟前
gdbus 常用数据结构与库函数
linux
DIY机器人工房1 小时前
代码详细注释:ARM-Linux字符设备驱动开发案例:LCD汉字输出改进建议开发板断电重启还能显示汉字,显示汉字位置自定义
linux·嵌入式·文件io·diy机器人工房
网硕互联的小客服2 小时前
服务器经常出现蓝屏是什么原因导致的?如何排查和修复?
运维·服务器·stm32·单片机·网络安全
喜欢吃豆2 小时前
从零构建MCP服务器:FastMCP实战指南
运维·服务器·人工智能·python·大模型·mcp
海外空间恒创科技2 小时前
恒创科技:香港站群服务器做seo站群优化效果如何
运维·服务器·科技
得物技术2 小时前
eBPF 助力 NAS 分钟级别 Pod 实例溯源|得物技术
linux
搬码临时工2 小时前
内网服务器怎么设置公网远程访问? windows桌面连接和Linux自带SSH外网异地跨网用完整步骤教程
运维·服务器·ssh
Rudon滨海渔村2 小时前
解决阿里云ubuntu内存溢出导致vps死机无法访问 - 永久性增加ubuntu的swap空间 - 阿里云Linux实例内存溢出(OOM)问题修复方案
linux·运维·ubuntu
苹果醋32 小时前
Vue3组合式API应用:状态共享与逻辑复用最佳实践
java·运维·spring boot·mysql·nginx
A-刘晨阳2 小时前
【Linux】Redis 6.2.6 的二进制部署【适用于多版本】
linux·运维·redis