1. 安装流程

2. 安装步骤
a. 软硬件环境


b. 获取安装包下载 : 安装包
c. 安装前准备
i. 关闭防火墙(每个节点都要关)
systemctl disable firewalld.service
systemctl stop firewalld.service ii. 关闭SELINUX(每个节点都要关)
sed -i "s/SELINUX=enforcing/SELINUX=disabled/g" /etc/selinux/config #永久关闭,需重启服务器
setenforce 0 #临时关闭 iii. 设置字符集参数
cat>> /etc/profile <<EOF
>exportLANG=en_US.UTF-8
>EOF iv. 设置时区和时间
cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime 用date -s 命令将各主机时间设置为统一时间
date -s "Sat Sep 27 16:00:07 CST 2020"安装opengauss时需要保证各个节点的时间一致,可以使用date 命令同步时间,也可参考 ntp同步时间
v. 关闭swap交换内存(可选)
swapoff -a vi. 设置网卡MTU值:X86--1500;ARM--8192
ifconfig 网卡编号 mtu 值例:ifconfig ens32 mtu 1500
vii. 设置root用户远程登陆(在安装时需要root用户远程登录访问权限)
[root@og_node1 ~]# cat /etc/ssh/sshd_config
PermitRootLogin yes
Banner none
[root@og_node1 ~]# systemctl restart sshd viii. 创建用户和用户组
[root@og_node1 ~]# groupadd dbgrp
[root@og_node1 ~]# useradd -g dbgrp -d /home/omm -s /bin/bash omm
[root@og_node1 ~]# echo 'omm@123' | passwd --stdin omm
更改用户 omm 的密码 。
passwd:所有的身份验证令牌已经成功更新。 ix. 创建目录
[root@og_node1 ~]# mkdir -p /opt/openGauss/210
[root@og_node1 ~]# chmod -R 755 /opt/openGauss/210
[root@og_node1 ~]# chown -R omm:dbgrp /opt/openGauss/210 x. 安装python3: python包
查看python版本
[root@og_node1 ~]# python -V|--version
[root@og_node1 ~]# whereis python 若输出的版本为python2 ,则需要检查是否安装python3
d. 上传并解压安装包
[root@og_node1 ~]# mkdir -p /opt/software/openGauss/
[root@og_node1 ~]# chown 755 -R /opt/software/openGauss/ 将本地安装包上传到服务器上的/opt/software/openGauss目录下(使用sftp命令上传)
[root@og_node1 ~]# cd /opt/software/openGauss/
[root@og_node1 openGauss]# tar -zxvf openGauss-2.1.0-CentOS-64bit-all.tar.gz
[root@og_node1 openGauss]# tar -zxvf openGauss-2.1.0-CentOS-64bit-om.tar.gz e. 配置XML文件(一主两备)
在/opt/software/openGauss/script/gspylib/etc/conf/cluster_config_template.xml获取XML文件模板(加粗的时可以根据自己环境自行替换的)
<?xml version="1.0"encoding="UTF-8"?>
<ROOT>
<!--openGauss整体信息 -->
<CLUSTER>
<!--数据库名称 -->
<PARAM name="clusterName"value="Cluster_template"/>
<!--数据库节点名称(hostname) -->
<PARAM name="nodeNames"value="node1_hostname,node2_hostname,node3_hostname"/>
<!--数据库安装目录-->
<PARAM name="gaussdbAppPath"value="/opt/openGauss/201/app"/>
<!--日志目录-->
<PARAM name="gaussdbLogPath"value="/var/log/omm"/>
<!--临时文件目录-->
<PARAM name="tmpMppdbPath"value="/opt/openGauss/tmp"/>
<!--数据库工具目录-->
<PARAM name="gaussdbToolPath"value="/opt/openGauss/201/om"/>
<!--数据库core文件目录-->
<PARAM name="corePath"value="/opt/openGauss/corefile"/>
<!--节点IP,与数据库节点名称列表一一对应 -->
<PARAM name="backIp1s"value="192.168.0.1,192.168.0.2,192.168.0.3"/>
</CLUSTER>
<!--每台服务器上的节点部署信息 -->
<DEVICELIST>
<!--节点1上的部署信息 -->
<DEVICE sn="node1_hostname">
<!--节点1的主机名称 -->
<PARAM name="name"value="node1_hostname"/>
<!--节点1所在的AZ及AZ优先级 -->
<PARAM name="azName"value="AZ1"/>
<PARAM name="azPriority"value="1"/>
<!--节点1的IP,如果服务器只有一个网卡可用,将backIP1和sshIP1配置成同一个IP -->
<PARAM name="backIp1"value="192.168.0.1"/>
<PARAM name="sshIp1"value="192.168.0.1"/>
<!--DBnode-->
<PARAM name="dataNum"value="1"/>
<!--数据库端口号 -->
<PARAM name="dataPortBase"value="15400"/>
<!--数据库主节点上的数据目录,及备机数据目录 -->
<PARAM name="dataNode1"value="/opt/openGauss/201/data/dn,node2_hostname,/opt/openGauss/201/data/dn,node3_hostname,/opt/openGauss/201/data/dn"/>
<!--数据库节点上设定同步模式的节点数 -->
<PARAM name="dataNode1_syncNum"value="0"/>
</DEVICE>
<!--节点2上的部署信息 -->
<DEVICE sn="node2_hostname">
<!--节点2的主机名称 -->
<PARAM name="name"value="node2_hostname"/>
<!--节点2所在的AZ及AZ优先级 -->
<PARAM name="azName"value="AZ1"/>
<PARAM name="azPriority"value="1"/>
<!--节点2的IP,如果服务器只有一个网卡可用,将backIP1和sshIP1配置成同一个IP -->
<PARAM name="backIp1"value="192.168.0.2"/>
<PARAM name="sshIp1"value="192.168.0.2"/>
</DEVICE>
<!--节点3上的部署信息 -->
<DEVICE sn="node3_hostname">
<!--节点3的主机名称 -->
<PARAM name="name"value="node3_hostname"/>
<!--节点3所在的AZ及AZ优先级 -->
<PARAM name="azName"value="AZ1"/>
<PARAM name="azPriority"value="1"/>
<!--节点3的IP,如果服务器只有一个网卡可用,将backIP1和sshIP1配置成同一个IP -->
<PARAM name="backIp1"value="192.168.0.3"/>
<PARAM name="sshIp1"value="192.168.0.3"/>
</DEVICE>
</DEVICELIST>
</ROOT>[root@og_node1 ~]# touch /home/omm/cluster_config.xml创建空文件,并把配置好的xml文件内容放在 cluster_config.xml 中
f. 初始化安装环境
i. 进入工具脚本存放目录下
[root@og_node1 ~]# cd /opt/software/openGauss/script/ ii. 如果是openEuler的操作系统为确保适配python版本,执行如下命令打开gspylib/common/CheckPythonVersion.py文件,将if not pythonVersion = = (3, 6):修改为if not pythonVersion > = (3, 6):,键入“ESC”键进入指令模式,执行:wq保存并退出修改。
vi gspylib/common/CheckPythonVersion.py
iii. 如果是openEuler的操作系统,执行如下命令打开performance.sh文件,用#注释sysctl -w vm.min_free_kbytes=112640 &> /dev/null,键入“ESC”键进入指令模式,执行:wq保存并退出修改。
vi /etc/profile.d/performance.sh
iv. 为确保成功安装,检查hostname与/etc/hostname是否一致,预安装过程中会对hostname进行检查
v. 设置环境变量
[root@og_node1 script]# export LD_LIBRARY_PATH=/opt/software/openGauss/script/gspylib/clib:$LD_LIBRARY_PATH
vi. 进行预安装(一主两备进行交互式互信)
[root@og_node1 script]# ./gs_preinstall -U omm -G dbgrp -X /home/omm/cluster_config.xml
g. 执行安装
i. 切换到omm用户
[root@og_node1 script]# su - omm
上一次登录:五 10月 8 20:04:34CST 2021 ii. 使用gs_install安装openGauss
[omm@og_node1 ~]$ gs_install -X /home/omm/cluster_config.xml
h. 初始化数据库
i. 查询数据库端口
方式一:cat 数据库数据目录/postgres.conf | grep port
方式二:grep ^port 数据库数据目录/postgres.conf
ii. 连接数据库
gsql -d postgres -p 端口号
iii. 创建新的数据库
postgres=# CREATE DATABASE mydb WITH ENCODING 'GBK' template = template0;
ERROR: Please use "ALTER ROLE user_name IDENTIFIED BY 'password' REPLACE 'old password';" to modify the initial password of user omm before operation!
postgres=# ALTER ROLE omm IDENTIFIED BY 'Oracle_123' REPLACE 'Oracle_321';
ALTER ROLE
postgres=# CREATE DATABASE mydb WITH ENCODING 'GBK' template = template0;
CREATE DATABASE i. (可选)设置备机可读

j. 验证主备同步
注:opengauss禁止omm用户远程登录




