参考官网安装文档的安装流程:
操作系统:CentOS 7.6.1810
下载链接:Index of /7.6.1810/isos/x86_64
若下载速度太慢可以将种子文件放迅雷里使用。
硬件配置:
官网推荐配置如上,但由于实在虚拟机进行测试,本人配置如下:
!!!注意:内存配置比较重要,建议至少双核4G以上,否则后面安装时会遇到问题报错内存不足,而在安装时再修改虚拟机配置时,不知道什么原因会导致虚拟机的终端.app无法打开,没有响应,且暂时未在网上找到解决办法。
依赖及版本:
注:Readline-devel在Centos8上的最新版本才为7.0,Centos7上的版本为readline-devel-6.2-11.el7.x86_64.rpm
其他的依赖都直接通过yum install安装最新版即可。
编译安装Python3.7
//安装依赖
yum -y groupinstall "Development tools"
yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel
//官网下载Python
wget https://www.python.org/ftp/python/3.7.0/Python-3.7.0.tar.xz
mkdir /usr/local/python3
tar zxvf Python-3.7.0.tgz.xz -C /opt/
//此处可能会报错,将Python-3.7.0.tgz.xz重命名为.tgz再解压即可
mv Python-3.7.0.tgz.xz Python-3.7.0.tgz
tar zxvf Python-3.7.0.tgz -C /opt/
cd /opt/Python-3.6.2/
./configure --prefix=/usr/local/python3
make
make install
//创建软链接
ln -s /usr/local/python3/bin/python3 /usr/bin/python3
ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3
关闭操作系统防火墙:
1、修改/etc/selinux/config文件中的“SELINUX“值为“disabled“,然后重启
vim /etc/selinux/config
```
SELINUX=disabled
```
reboot
2、检查防火墙状态
systemctl status firewalld
若防火墙状态显示为active (running),则表示防火墙未关闭,需要执行:
systemctl disable firewalld.service
systemctl stop firewalld.service
若防火墙状态显示为inactive (dead),则无需再关闭防火墙。
1、创建XML配置文件/opt/software/openGauss/cluster_config.xml
参考文件配置示例:
其中,nodeNames值需要与本机hostname一致。
其次 ,backIp1s、backIp1、sshIp1的值需要与虚拟机网卡ip一致。
(ps:小坑,在安装的时候排查发现的错误)
2、初始化安装
创建存放安装包的目录,解压安装包,解压后会得到-om的安装包,继续解压。
mkdir -p /opt/software/openGauss
chmod 755 -R /opt/software
cd /opt/software/openGauss
tar -zxvf openGauss-x.x.x-openEuler-64bit-all.tar.gz
tar -zxvf openGauss-x.x.x-openEuler-64bit-om.tar.gz
//进入目录
cd /opt/software/openGauss/script
//使用gs_preinstall准备好安装环境
//采用交互模式执行前置,并在执行过程中自动创建操作系统root用户互信和omm用户互信:
./gs_preinstall -U omm -G dbgrp -X /opt/software/openGauss/cluster_config.xml
若需要采用其他交互模式可参考:官方文档
preinstall时可能会报错Installation environment does not meet the desired ...
根据报错输入命令查看详细问题时
/opt/software/openGauss/script/gs_checkos -i A -h localhost.localdomain --detail
发现是THP服务未被禁用,解决办法:
//新建一个service
vi /etc/systemd/system/disable-thp.service
//内容
[Unit]
Description=Disable Transparent Huge Pages (THP)
[Service]
Type=simple
ExecStart=/bin/sh -c "echo 'never' > /sys/kernel/mm/transparent_hugepage/enabled && echo 'never' > /sys/kernel/mm/transparent_hugepage/defrag"
[Install]
WantedBy=multi-user.target
//使其生效
systemctl daemon-reload
systemctl start disable-thp
//使其开机生效
systemctl enable disable-thp
omm用户需要拥有安装包所在目录及子目录的权限
sudo chown omm:dbgrp /opt -R
若报错
omm is not in the sudoers file. This incident will be reported.
可修改/etc/sudoers文件
//给文件增加写权限
chmod u+w /etc/sudoers
//找到root ALL=(ALL) ALL行
//在下面增加
omm ALL=(ALL) ALL
//保存后去除文件写权限
chmod u-w /etc/sudoers
切换到omm用户
su - omm
gs_install -X /opt/software/openGauss/cluster_config.xml
执行安装(激动人心!!)
gs_install -X /opt/software/openGauss/cluster_config.xml
初始化数据库
//-p 端口
gsql -d postgres -p 15400
openGauss=# CREATE DATABASE mydb WITH ENCODING 'GBK' template = template0;
执行后显示CREATE DATABASE,则为成功。