目录

1. 概述

1.1 简介

1.2 内容描述

1.3 实验环境说明

2. 实验介绍

2.1 关于实验

2.2 实验目的

3. 购买华为云 ECS 鲲鹏服务器

3.1 登陆华为云(没有华为云账号的需要先注册,登录后要实名认证否则购买不了云服务器)

3.2 购买华为云 ECS 鲲鹏服务器 

3.3 登录ECS

4.安装前的准备

4.1 设置操作系统环境

4.2 创建安装用户和用户组

4.3 关闭操作系统防火墙

4.4  设置字符集参数

4.5 设置时区

4.6关闭 swap 交换内存

4.7 关闭RemoveIPC

4.8 设置网卡 MTU 值

4.9 设置root用户远程登录

4.10 重启系统

5. 安装openGauss

5.1初始化安装环境

5.2 创建xml配置文件

5.3 部署安装openGauss软件

5.4 初始化数据库

5.5 安装验证

6.使用 Data Studio 连接数据库

6.1 更改服务器安全组,放通所有端口 

6.2 在使用 Data Studio 之前为其专门创建一个数据库用户

6.3关闭SSL认证

6.4 打开Datastudio应用程序(JDK必须是1.8或1.8以上的版本)


1. 概述

1.1 简介

   本指导书适用于在华为云部署 openGauss 数据库,通过该指导书可以顺利 完成 openGauss_2.0.0 数据库在华为云的部署。

1.2 内容描述

本实验指导书主要内容为华为云购买与配置与openGauss_2.0.0数据库安装。

1.3 实验环境说明

组网说明

本实验环境为华为云环境,需要购买华为云 ECS 鲲鹏服务器。

设备介绍

为了满足实验需要,建议每套实验环境采用以下配置: 设备名称、型号与版本的对应关系如下:

设备名称

设备型号

软件版本

数据库

openGauss

2.0.0

服务器

华为云 ECS 鲲鹏服务器

适配openEuler 20.03 操作系统

4核8G

2. 实验介绍

2.1 关于实验

 本实验主要描述华为云鲲鹏服务器的购买与openGauss_2.0.0数据库的部署。

2.2 实验目的

掌握华为云部署 openGauss_2.0.0 数据库。

3购买华为云 ECS 鲲鹏服务器

3.1 登陆华为云(没有华为云账号的需要先注册,登录后要实名认证否则购买不了云服务器)

登录网址

 

3.2 购买华为云 ECS 鲲鹏服务器 

 Step 1: 选择弹性云服务器 ECS

Step 2: 进入 ECS 购买界面 

 

Step 3: 配置 ECS

(1)基础配置 

计费模式:按需计费;区域:华-北京四

 CPU 架构:鲲鹏计算;规格:4vCPUs/8GB

 公共镜像:openEuler 系统盘:60GB

点击下一步(右下角) 

(2)网络配置

网络:使用默认选项; 安全组:使用默认选项

 弹性公网 IP:点击现在购买,选择默认的配置

点击下一步(右下角)

(3)高级配置

 云服务器名称:自己更改; 设置密码; 云备份:暂不购买

 

点击下一步(右下角)

(4)检查基本信息

(5)点击立即购买

注:如果没有实名认证的话,这一步是购买不了的!!如果是前边没有实名认证,到这一步才实名认证的话,认证完之后,可能这些配置需要重新选择一下!!

看到上图证明购买成功!

(6)  返回云服务器列表

 

3.3 登录ECS

 step1: 使用自带的远程登陆。 

(1)点击云服务器列表中的远程登录。

 

 然后选择CloudShell登录

 

(2) 使用 root 用户登陆 ECS 云服务器,输入密码。

 

注:如果这里连接不上,右下角显示拒绝访问,此时需要检查一下你密码输入是否正确!

(3) 登录成功

 

 step2: 使用 mobaxterm 工具进行登录。

 解压应用程序的压缩包(无需安装)

 双击使用应用程序

 

 (1) 使用 MobaXterm 创建一个新的 session,注意选择 SSH 类型。

 

(2) 双击新建的session连接服务器

 

注:如果ssh连接服务器报错,

① 查看自己填写的session是否是服务器弹性公网

② 看设置Settings里的ssh配置是否为keepalive

 

 (3) 输入自己数据库对应的账户进入服务器

 

注:接下来需要输入命令行的地方,大家可以选择上图的ssh进行操作,也可以用XShell连接服务器进行操作。

4.安装前的准备

4.1 设置操作系统环境

 (1) 修改 python 版本并安装 libaio 包

 (之后安装过程中 openGauss 用户互信,openEuler 服务器需要用到 Python-3.7.x 命令,但是默认 Python 版本为 Python-2.7.x,所以需要切换 Python 版本)

查看python版本

 python -V

① 进入/usr/bin 文件,备份 python 文件。

cd /usr/bin

 备份 python 文件。

mv python python.bak

② 建立 python3 软连接。

ln -s python3 /usr/bin/python

③ 验证 python 版本。

python -V

显示如下,说明切换成功:

 

④ python 版本切换成功,后续安装需要 libaio 包,下载进行安装。

yum install libaio* -y

 

(2) 修改/etc/profile 文件

使用 vim 命令编辑文件进入普通模式:

vim /etc/profile

按键盘上的字母“i”进入插入模式,此时文件可被编辑。

将光标定位到最后一行并键入:

ulimit -c unlimited

按“ECS”,进入普通模式,使用:wq 写入并退出。

(3) 修改/etc/sysctl.conf 文件

使用 vim 命令编辑文件进入普通模式:

vim /etc/sysctl.conf

按键盘上的字母“i”进入插入模式,此时文件可被编辑。

将光标定位到最后一行并键入:

kernel.core_pattern = /corefile/core-%e-%p-%t

按“ECS”,进入普通模式,使用:wq 写入并退出。

查看/etc/sysctl.conf中的配置:

sysctl -p

 

 注:这一步建议不要跳过,否则下一步将会出现下图这种结果,而这种结果不是我们想要的。

(4) 执行命令,使上诉配置立即生效。 

[root@ecs-name ~]# source /etc/profile

(5) 检查上面的配置是否生效

[root@ecs-name ~]# ulimit -c

unlimited

[root@ecs-name ~]# sysctl -a | grep core_pattern 

kernel.core_pattern = /corefile/core-%e-%p-%t

如下图所示:

 

4.2 创建安装用户和用户组

(1) 创建用户组:

groupadd dbgrp

(2) 创建用户 omm:

useradd -g dbgrp -d /home/omm -m -s /bin/bash omm

(3) 为用户 omm 添加密码(所有密码建议设置一样,避免出现遗忘的情况)

passwd omm 

如下图所示:

 

4.3 关闭操作系统防火墙

操作步骤

目前仅支持在防火墙关闭的状态下进行安装。

step 1  修改/etc/selinux/config文件中的“SELINUX”值为“disabled”。

(1) 使用vim编辑器打开config文件。

vim  /etc/selinux/config

(2) 修改“SELINUX”的值“disabled”,

SELINUX=disabled

按“ECS”,进入普通模式,使用:wq 写入并退出

step 2 重新启动操作系统。

reboot 

step 3 检查防火墙是否关闭。

systemctl status firewalld

若防火墙状态显示为active (running),则表示防火墙未关闭,请执行步骤4

若防火墙状态显示为inactive (dead),则无需再关闭防火墙。

step 4  关闭防火墙。

systemctl disable firewalld.servicež

systemctl stop  firewalld.service

4.4  设置字符集参数

将各数据库节点的字符集设置为相同的字符集,vi编辑器打开/etc/profile文件:

vim /etc/profile

在/etc/profile文件末尾添加:

export LANG=en_US.UTF‐8

按“ECS”,进入普通模式,使用:wq 写入并退出。 

执行命令,使上诉配置立即生效。

source /etc/profile

4.5 设置时区

rm -fr /etc/localtime

ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

ll /etc/localtime

 

4.6关闭 swap 交换内存

说明:关闭swap交换内存是为了保障数据库的访问性能,避免把数据库的缓冲区内存淘汰到磁盘上。 如果服务器内存比较小,内存过载时,可打开swap交换内存保障正常运行。

swapoff -a

4.7 关闭RemoveIPC

操作步骤

step 1 修改/etc/systemd/logind.conf文件中的“RemoveIPC”值为“no”。

(1) 使用VIM打开logind.conf文件。 (注:如果这个文件中没有这个参数就写进去然后保存)

vim /etc/systemd/logind.conf

(2) 修改“RemoveIPC”的值“no”。

RemoveIPC=no

step 2 修改/usr/lib/systemd/system/systemd-logind.service文件中“RemoveIPC”值为 “no”。(注:如果这个文件中没有这个参数就写进去然后保存)

(1) 使用VIM打开systemd-logind.service文件。

vim /usr/lib/systemd/system/systemd-logind.service 

(2) 修改“RemoveIPC”的值“no”。

RemoveIPC=no

step 3 重新加载配置参数。

systemctl daemon-reload

systemctl restart systemd-logind

step 4 检查修改是否生效。 (检查RemoveIPC的值是否为no,若不是no,说明未修改成功)

loginctl show-session | grep RemoveIPC 

systemctl show systemd-logind | grep RemoveIPC 

如下图:

4.8 设置网卡 MTU 值

操作步骤

step 1 执行如下命令查询服务器的网卡名称。

ifconfig

如下图所示,如果服务器IP为192.168.0.210,则该服务器的网卡名称为eth0。

step 2 使用如下命令将各数据库节点的网卡MTU值设置为相同大小。对于X86,MTU值推荐 1500;对于ARM,MTU值推荐8192。 

ifconfig 网卡名称 mtu  mtu值

例:

ifconfig eth0 mtu 8192

4.9 设置root用户远程登录

step 1 修改PermitRootLogin配置,允许用户远程登录。

(1) 打开sshd_config文件

vim /etc/ssh/sshd_config

(2) 修改权限配置,可以使用以下两种方式实现:

① 注释掉“PermitRootLogin no”。

#PermitRootLogin no

② 将“PermitRootLogin”改为“yes”。

PermitRootLogin yes

(3) 执行:wq保存并退出编辑页面。

step 2 修改Banner配置,去掉连接到系统时,系统提示的欢迎信息。欢迎信息会干扰安装时远程操作的返回结果,影响安装正常执行。

(1) 编辑sshd_config文件。

vim /etc/ssh/sshd_config

(2) 修改Banner配置,注释掉“Banner”所在的行。

#Banner /etc/issue.net

(3) 执行:wq保存并退出编辑页面。

step 3 使用如下命令使设置生效。

systemctl restart sshd.service 

step 4 以root用户身份重新登录。

ssh xxx.xxx.xxx.xxx

注:xxx.xxx.xxx.xxx为安装openGauss环境的IP地址。

4.10 重启系统

   reboot

注:由于我们用的是云服务器,所以需要在云端关机,然后再开机,开机后用xshell重新连一下服务器就可以继续下边的操作。

5. 安装openGauss

以单节点企业版的openGauss为例

5.1初始化安装环境

为了保证openGauss的正确安装,请首先对主机环境进行配置。

获取安装包

openGauss开源社区上提供了安装包的获取方式。

操作步骤

step1  从openGauss开源社区下载对应平台的安装包(学习通有下载好的安装包openGauss-2.0.0-openEuler-64bit-all.tar.gz,需要的话可自取。)

(1) 登录openGauss开源社区,选择 2.0.0版本对应平台企业版安装包。

(2) 单击“下载”。

step 2  上传安装包。 

(1) 创建安装目录

[root@ecs-name ~]# mkdir -p /opt/software/Gauss

[root@ecs-name ~]#chmod 755 -R /opt/software

(2) 使用MobaXterm上传文件(使用其他工具上传安装包也可以)

创建远程连接(Sftp)

 

 

使用新创建的账户连接服务器

连接之后,中间栏为本地的目录 ,右侧栏为服务器目录

 

进入服务器 opt/software/Gauss 的目录

 

 将本地的数据库安装包拖入右侧的服务器对应目录下(上传数据库安装包)

在xshell终端检查上传的安装包:

step 3 解压安装包

在安装包所在的目录/opt/software/Gauss下,解压安装包openGauss-x.x.x-openEuler-64bit-all.tar.gz。安装包解压后,会有OM安装包和Server安装包。继续解压OM安装包,会在/opt/software/Gauss路径下自动生成script子目录,并且在script目录下生成gs_preinstall等各种OM工具脚本。

cd /opt/software/Gauss

tar -zxvf openGauss-2.0.0-openEuler-64bit-all.tar.gz

tar -zxvf openGauss-2.0.0-openEuler-64bit-om.tar.gz

解压后查看/opt/software/Gauss目录下的文件:

ls

 

5.创建xml配置文件

安装openGauss前需要创建cluster_config.xml文件。cluster_config.xml文件包含部署 openGauss的服务器信息、安装路径、IP地址以及端口号等。用于告知openGauss如何部署。

(1)在script/gspylib/etc/conf/cluster_config_template.xml获取XML文件模板。

 

将模板拷贝到\opt\software\Gauss目录下

cp cluster_config_template.xml  /opt/software/Gauss

然后将其改名为cluster_config.xml,如下图所示:

mv cluster_config_template.xml  cluster_config.xml

(2)用vi编辑cluster_config.xml文件(文中标注的部分要格外关注,其他的文件目录根据自己情况设置,我这里默认了)

vi  cluster_config.xml

 

step 4 如果是openEuler的操作系统,执行如下命令打开performance.sh文件,用#注释sysctl -w vm.min_free_kbytes=112640 &> /dev/null,键入“ESC”键进入指令模式,执行:wq保存并退出修改。

vi  /etc/profile.d/performance.sh

step 5 为确保成功安装,执行命令检查 hostname 与 /etc/hostname 是否一致。

hostname

cat /etc/hostname 

注:如果hostname 与 /etc/hostname 中的主机名不一致,有两种方法将主机名改为一致,

① 请执行如下命令打开/etc/ hostname文件,

vi /etc/hostname

输入主机名,然后键入“ESC”键进入指令模式,执行:wq保存并退出修改。

② 直接在命令行修改主机名

 hostnamectl set-hostname "node1"

step 6 加载环境变量(可直接在命令行输入)

export LD_LIBRARY_PATH=/opt/software/Gauss/script/gspylib/clib:$LD_LIBRARY_PATH

step 7 创建目录并赋权

mkdir –p /opt/huawei

chmod 777 -R /opt/huawei

 

step 8 添加4条网络内核参数

vi /etc/sysctl.conf

在/etc/sysctl.conf文件末尾添加:

net.ipv4.tcp_retries1 = 5

 net.ipv4.tcp_syn_retries = 5

 net.sctp.path_max_retrans = 10

 net.sctp.max_init_retransmits = 10

如下图所示:

step 9 使用gs_preinstall准备好安装环境。

cd /opt/software/Gauss/script

./gs_preinstall -U omm -G dbgrp -X /opt/software/Gauss/cluster_config.xml

注:

到这一步很有可能会出错,此时可以去这个链接里(https://support.huaweicloud.com/errorcode-dws/dws_08_0545.html)根据出错代码查找出对应哪种错,然后根据提示想办法解决。

step 10 重启系统,使内置参数和资源限制参数有效

reboot

5.3 部署安装openGauss软件

执行前置脚本准备好openGauss安装环境之后,按照启动安装过程部署openGauss。

操作步骤

检查安装包和openGauss配置文件在规划路径下是否已存在,如果没有,重新执行预安装,确保预安装成功,再执行以下步骤。

step 1 在/etc/profile添加一行:

vi /etc/profile

export PATH=/root/gauss_om/omm/script:$PATH

chmod 777 -R /opt/huawei

step 2 赋予omm用户权限

chmod -R 775 /opt/software/

chown omm:dbgrp /opt/software -R

step 3 给omm用户赋予root权限

chmod -R 775 /etc/sudoers

vi /etc/sudoers

修改 /etc/sudoers 文件,找到下面一行,在root下面添加一行,如下所示:

## Allow root to run any commands anywhere
root    ALL=(ALL)     ALL
omm   ALL=(ALL)     ALL

 

step 4 登录到openGauss的主机,并切换到omm用户。

su - omm

注:

(1) omm指的是前置脚本gs_preinstall中-U参数指定的用户。

(2) 安装脚本gs_install必须以前置脚本中指定的omm执行,否则,脚本执行会报错。

step 5 使用gs_install安装openGauss。

gs_install -X /opt/software/Gauss/cluster_config.xml

注:

/opt/software/Gauss/cluster_config.xml为openGauss配置文件的路径。在执行过程中,用户需根据提示输入数据库用户的密码,密码具有一定的复杂度,为保证用户正常使用该数据库,请记住输入的数据库密码。

5.4 初始化数据库

使用SQL语句创建数据库时,指定数据库的字符集为GBK。

gsql -d postgres -p 26000

postgres=# CREATE DATABASE mydb WITH ENCODING 'GBK' template = template0;

显示类似如下信息:

CREATE DATABASE

退出数据库

postgres=# \q

5.5 安装验证

通过openGauss提供的gs_om工具可以完成数据库状态检查。

操作步骤

step 1 以omm用户身份登录服务器。

su - omm

step 2 执行如下命令检查数据库状态是否正常,“cluster_state ”显示“Normal”表示数据 库可正常使用。

gs_om -t status 

step 3 数据库安装完成后,默认生成名称为postgres的数据库。第一次连接数据库时可以连接到此数据库。

其中postgres为需要连接的数据库名称,26000为数据库主节点的端口号,即XML配置 文件中的dataPortBase的值。请根据实际情况替换。

gsql -d postgres -p 26000

连接成功后,系统显示类似如下信息表示数据库连接成功。

gsql ((openGauss x.x.x build 290d125f) compiled at 2021-03-08 02:59:43 commit 2143 last mr 131 Non-SSL connection (SSL connection is recommended when requiring high-security)

Type "help" for help

6.使用 Data Studio 连接数据库

6.1 更改服务器安全组,放通所有端口 

(1) 在弹性云服务器列表中,点击 更多-->网络设置-->更改安全组

 

 (2) 点击新建安全组

 (3) 进入创建安全组

 

(4) 点击新建的安全组‘全部方通’ 

 

 (5) 入项规则选择 “全部方通“, 点击确认。

 

 

 

 (6) 回到服务器列表,重新选择新建的安全组

 

6.2 在使用 Data Studio 之前为其专门创建一个数据库用户

(1) 先创建一个数据库opengauss

postgres=# CREATE DATABASE opengauss ENCODING 'GBK' template = template0;

(2) 创建一个用户lmh

postgres=# CREATE USER lmh PASSWORD 'xxxxxxxxx';

(3) 将数据库opengauss的所属者改为lmh。

postgres=# ALTER DATABASE opengauss OWNER TO lmh;

(4) 将系统权限授权给用户或者角色。

postgres=# GRANT ALL PRIVILEGES TO lmh;

6.3关闭SSL认证

由于openGauss默认开启SSL认证,且配置认证较为麻烦,个人开发测试并不需要它。因此关闭openGauss的远程用户登录SSL认证模式。

step1 找到postgresql.conf文件(在cluster_config.xml文件中数据库主节点部分设置的数据目录)

cd /opt/huawei/install/data/dn

step 2 修改postgresql.conf文件,关闭SSL

vi postgresql.conf

ssl = off                               # (change requires restart)

#ssl_ciphers = 'ALL'           # allowed SSL ciphers

 

step 3 修改postgresql.conf文件,增加要访问的端口号

listen_addresses='localhost,x.x.x.x(数据库所在服务器IP)'

 

 step 4 修改pg_hba.conf文件,增加其他远程访问连接的许可(在cluster_config.xml文件中数据库主节点部分设置的数据目录)

cd /opt/huawei/install/data/dn

vi pg_hba.conf

将这行的trust改为sha256

 

 注:如果画出的那行下边没有

host    all    all    0.0.0.0/0          sha256

就添加进去。

6.4 打开Datastudio应用程序(JDK必须是1.8或1.8以上的版本)

(1) 双击Data studio.exe 打开应用程序

 

 (2) 设置连接属性。

(3) 出现连接安全告警,选择‘不再显示’,然后点击‘继续’即可。 

 

(4) 连接成功。

 

以上便是我安装openGauss的全过程,已经经过验证是正确的。

文中所提到的需要下载的资源请点击

欢迎大家评论和补充~

Logo

华为云1024程序员节送福利,参与活动赢单人4000元礼包,更有热门技术干货免费学习

更多推荐