openGauss 单机部署

一、安装环境

操作系统:虚拟机 VMware、CentOS7.9

环境设置:

(1)虚拟机内存 3G、磁盘 100G

(2)系统版本修改

一开始使用了 centos8,无法安装,因此降低版本,选用 7.9 后依然存在一些问题,因此修改/etc/redhat-release 文件中系统版本为 CentOS Linux release 7.6(Core)

(3)配置 YUM 源

① 删除系统自带 yum 源

rm -rf /etc/yum.repos.d/*

② 下载阿里云 yum 源

wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

③ 生成仓库缓存

yum makecache

(4)安装依赖包

1 yum install ‐y libaio‐devel flex bison ncurses‐devel glibc.devel patch lsb_release

2 yum install ‐y openssl* python3

(5)关闭 SELINUX 和 Firewall

1 setenforce 0

2 systemctl disable firewalld.service

3 systemctl stop firewalld.service

(6)关闭交换内存

swapoff -a

(7)关闭透明大页

1 vim /etc/rc.d/rc.local

2 if test ‐f /sys/kernel/mm/transparent_hugepage/enabled;

3 then

4 echo never > /sys/kernel/mm/transparent_hugepage/enabled

5 fi

6 if test ‐f /sys/kernel/mm/transparent_hugepage/defrag;

7 then

8 echo never > /sys/kernel/mm/transparent_hugepage/defrag

9 fi

(8)修改主机名

1 echo "node1" > /etc/hostname

2 echo “ ... node1” >>/etc/hosts

二、安装详细步骤

Opengauss 安装

(1)下载 opengauss 安装包及创建用户组和目录

1 groupadd dbgrp

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

3 echo "omm" | passwd -‐stdin omm

4 mkdir -p /opt/software/openGauss

5 chmod 755 -R /opt/software

6 chown -R omm:dbgrp /opt/software/openGauss

cd /opt/software/openGauss/

7 wget https://opengauss.obs.cn-south-1.myhuaweicloud.com/2.0.0/x86/openGauss-2.0.0-CentOS-64bit-all.tar.gz

8 tar -zxvf openGauss-2.0.0-CentOS-64bit-all.tar.gz

9 tar -zxvf openGauss-2.0.0-CentOS-64bit-om.tar.gz

(2)单机 xml 配置文件

首先从如下地址复制文件至当前位置

cp script/gspylib/etc/conf/cluster_config_template.xml .

修改配置文件具体如下,配置文件中要注意配置一下几个参数:nodeNAMES、backips

(3)设置 lib 库

vim .bashrc

添加

export GPHOME=/opt/huawei/install/om

export PATH=$GPHOME/script/gspylib/pssh/bin:$GPHOME/script:$PATH

export LD_LIBRARY_PATH=$GPHOME/lib:$LD_LIBRARY_PATH

export PYTHONPATH=$GPHOME/lib

export GAUSSHOME=/opt/huawei/install/app

export PATH=$GAUSSHOME/bin:$PATH

export LD_LIBRARY_PATH=$GAUSSHOME/lib:$LD_LIBRARY_PATH

export S3_CLIENT_CRT_FILE=$GAUSSHOME/lib/client.crt

export GAUSS_VERSION=2.0.0

export PGHOST=/opt/huawei/tmp

export GAUSSLOG=/opt/huawei/log/omm

umask 077

export GAUSS_ENV=2

export GS_CLUSTER_NAME=singlenode

(4)执行交互式初始化

① 预安装,操作如下:

1 cd /opt/software/openGauss/script

2 root@node1 script]#python3 gs_preinstall -U omm -G dbgrp -X /opt/software/openGauss/cluster_config_template.xml

Parsing the configuration file.

Successfully parsed the configuration file.

Installing the tools on the local node.

Successfully installed the tools on the local node.

Setting pssh path

Successfully set core path.

Are you sure you want to create the user[omm] and create trust for it (yes)? yes

Preparing SSH service.

Successfully prepared SSH service.

Checking OS software.

Successfully check os software.

Checking OS version.

Successfully checked OS version.

Creating cluster's path.

Successfully created cluster's path.

Setting SCTP service.

Successfully set SCTP service.

Set and check OS parameter.

Setting OS parameters.

Successfully set OS parameters.

Warning: Installation environment contains some warning messages.

Please get more details by "/opt/software/openGauss/script/gs_checkos -i A -h node1 --detail".

Set and check OS parameter completed.

Preparing CRON service.

Successfully prepared CRON service.

Setting user environmental variables.

Successfully set user environmental variables.

Setting the dynamic link library.

Successfully set the dynamic link library.

Setting Core file

Successfully set core path.

Setting pssh path

Successfully set pssh path.

Set ARM Optimization.

No need to set ARM Optimization.

Fixing server package owner.

Setting finish flag.

Successfully set finish flag.

Preinstallation succeeded.

当出现“Preinstallation succeeded.”时,预安装成功。

② 安装

进入 script 目录后进行正式安装,命令如下,其中“/opt/software/openGauss/cluster_config_template.xml”为前几步中编辑的配置文件。

此过程需要输入密码,且设置的密码要符合复杂度要求如下:

最少包含 8 个字符;

不能和用户名和当前密码(ALTER)相同,或和当前密码反序;

至少包含大写字母(A-Z),小写字母(a-z),数字,非字母数字字符(限定为~!@#$%^&*()-_=+|[{}];:,<.>/?)四类字符中的三类字符:

[omm@node1 openGauss]$ cd script/

[omm@node1 script]$ gs_install -X /opt/software/openGauss/cluster_config_template.xml

Parsing the configuration file.

Check preinstall on every node.

Successfully checked preinstall on every node.

Creating the backup directory.

Successfully created the backup directory.

begin deploy..

Installing the cluster.

begin prepare Install Cluster..

Checking the installation environment on all nodes.

begin install Cluster..

Installing applications on all nodes.

Successfully installed APP.

begin init Instance..

encrypt cipher and rand files for database.

Please enter password for database:

Please repeat for database:

begin to create CA cert files

The sslcert will be generated in /opt/huawei/install/app/sslcert/om

Cluster installation is completed.

Configuring.

Deleting instances from all nodes.

Successfully deleted instances from all nodes.

Checking node configuration on all nodes.

Initializing instances on all nodes.

Updating instance configuration on all nodes.

Check consistence of memCheck and coresCheck on database nodes.

Configuring pg_hba on all nodes.

Configuration is completed.

Successfully started cluster.

Successfully installed application.

end deploy..

测试安装是否成功,首先需要使数据库处于开启状态,然后输入”gsql -d postgres -p 26000”命令使数据库在本地运行,其中-p 为数据库端口 dataPortBase,具体数值在前述过程中 xml 配置文件中确定,这里为 26000。

Opengauss 连接设置

(1)安装 java,确认 jdk 版本为 1.8

(2)从官网下载 jdbc 压缩包后,将其解压至路径/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.302.b08-0.el7_9.x86_64/jre/lib/ext 下

(3)配置数据库服务器中的白名单与监听名单

① 以操作系统用户 omm 登录数据库主节点

② 执行如下命令增加对外提供服务的网卡 IP 或者主机名(英文逗号分隔),其中 NodeName 为当前节点名称,如:

gs_guc reload -N NodeName -I all -c "listen_addresses='localhost,...'"

③ 执行如下命令在数据库主节点配置文件中增加一条认证规则。(这里假设客户端 IP 地址为 ...,即远程连接的机器的 IP 地址)

gs_guc reload -N all -I all -h "host all yushan .../32 sha256"

  • -N all表示openGauss中的所有主机。
  • -I all表示主机中的所有实例。
  • -h表示指定需要在“pg_hba.conf”增加的语句。
  • all表示允许客户端连接到任意的数据库。
  • yushan表示连接数据库的用户。
  • .../32表示只允许IP地址为...的主机连接。在使用过程中,请根据用户的网络进行配置修改。32表示子网掩码为1的位数,即... - sha256表示连接时jack用户的密码使用sha256算法加密。

    与之效果相同的代替操作:

在/opt/huawei/install/data/db1 路径(创建的节点名叫 db1)下编辑 pg_hba.conf 文件

(4)通过编写 java 程序即可连接,example 如下

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.PreparedStatement;

import java.sql.SQLException;

import java.sql.Statement;

import java.sql.CallableStatement;

public class test{

public static Connection getConnect(String username, String passwd)

{

//驱动类。

String driver = "org.postgresql.Driver";

//数据库连接描述符。

String sourceURL = "jdbc:postgresql://...:26000/postgres";

Connection conn = null;

    try
{
//加载驱动。
Class.forName(driver);
}
catch( Exception e )
{
e.printStackTrace();
return null;
} try
{
//创建连接。
conn = DriverManager.getConnection(sourceURL, username, passwd);
System.out.println("Connection succeed!");
}
catch(Exception e)
{
e.printStackTrace();
return null;
} return conn;
};
public static void main(String[] args) {
// TODO Auto-generated method stub
Connection conn = getConnect("yushan", "1qaz@wsx");
//BatchInsertData(conn);
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}

}

编译执行程序后,如图,连接成功。

三、安装过程中碰到的问题与解决办法

问题 1

在安装结束后,准备运行后,发现 gsom 无法启动。

解决过程:

猜测可能是内存不足,虚拟机一开始设置的内存为 1G,查阅相关博客发现,1G 内存对于企业版不足,后将虚拟机内存设置为 3G。

问题 2

运行 gsom 后报错如下

解决过程:

检查发现 pg_hba.conf 文件配置出错,修改如下

问题 3

一开始安装的虚拟机为 centos8,进行预安装后发现不支持该版本操作系统。

解决过程:

切换为 centos7.9,但依然报错,因此修改/etc/redhat-release 文件中系统版本为 CentOS Linux release 7.6(Core)

openGauss单机部署的更多相关文章

  1. Hadoop系列之(一):Hadoop单机部署

    1. Hadoop介绍 Hadoop是一个能够对海量数据进行分布式处理的系统架构. Hadoop框架的核心是:HDFS和MapReduce. HDFS分布式文件系统为海量的数据提供了存储, MapRe ...

  2. Ecstore安装篇-2.单机部署【linux】

    单机部署实施-linux 单机部署实施-linux author :James,jimingsong@vip.qq.com since :2015-03-02 系统环境需求 软件来源 底层依赖 1. ...

  3. ETL作业调度软件TASKCTL4.1单机部署

    单机部署,实际上就是将EM节点和一个Server节点安装到同一个地方.EM节点是TASKCTL服务端的最顶层,主要负责客户端与服务端之间的通信.Server节点是TASKCTL的调度服务控制层,也有A ...

  4. 使用yum源的方式单机部署MySQL8.0.13

    使用yum源的方式单机部署MySQL8.0.13 作者:尹正杰  版权声明:原创作品,谢绝转载!否则将追究法律责任. 基本上开源的软件都支持三种安装方式,即rmp方式安装,源码安装和二进制方式安装.在 ...

  5. 使用二进制安装包的方式单机部署MySQL8.0.13

    使用二进制安装包的方式单机部署MySQL8.0.13 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 关于MySQL的介绍我这里就不多做赘述了,如何下载MySQL详情请参考:MySQ ...

  6. solr单机部署tomcat

    所需软件:solr4.8.1.Tomcat7 下载完相应软件后开始单机部署(windows下) 在F盘根目录创建solr文件夹,并解压solr4.8和tomcat7到该文件夹 在F盘根目录创建solr ...

  7. Hadoop生态圈-CentOs7.5单机部署ClickHouse

    Hadoop生态圈-CentOs7.5单机部署ClickHouse 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 到了新的公司,认识了新的同事,生产环境也得你去适应新的集群环境,我 ...

  8. Kafka记录-Kafka简介与单机部署测试

    1.Kafka简介 kafka-分布式发布-订阅消息系统,开发语言-Scala,协议-仿AMQP,不支持事务,支持集群,支持负载均衡,支持zk动态扩容 2.Kafka的架构组件 1.话题(Topic) ...

  9. centos6.5环境下zookeeper-3.4.6集群环境部署及单机部署详解

    centos6.5环境下Zookeeper-3.4.6集群环境部署 [系统]Centos 6.5 集群部署 [软件]准备好jdk环境,此次我们的环境是open_jdk1.8.0_101 zookeep ...

  10. Win10 下 hadoop3.0.0 单机部署

    前言 因近期要做 hadoop 有关的项目,需配置 hadoop 环境,简单起见就准备进行单机部署,方便开发调试.顺便记录下采坑步骤,方便碰到同样问题的朋友们. 安装步骤 一.下载 hadoop-XX ...

随机推荐

  1. 【Azure 环境】Azure 的PaaS服务如果涉及到安全漏洞问题后,我们如何确认所用服务的实例(VM:虚拟机)的操作系统已修复该补丁呢?

    问题描述 如上图中PaaS所不可见区域, 操作系统级别的内容我们并不知道具体的内容.如果当出现新的操作系统级别的安全漏洞时候,我们如何来确认当前所使用的Azure PaaS服务所在主机的OS已经修复了 ...

  2. Sharding-JDBC源码解析与vivo的定制开发

    作者:vivo IT 平台团队 - Xiong Huanxin Sharding-JDBC是在JDBC层提供服务的数据库中间件,在分库分表场景具有广泛应用.本文对Sharding-JDBC的解析.路由 ...

  3. GPS 方案总结

    GPS 方案 搜集网络上关于GPS的方案. redis + mysql redis 用来做设备或用户实时定位的查询. mysql存储历史轨迹.存储时分两部分,一张表做实时查询用.一张表做备份用.如果需 ...

  4. Python面向对象之多态和鸭子类型

    [一]多态 [1]什么是多态 多态指的是一类事物有多种形态 [2]示例 比如动物有多种形态:猫.狗.猪 import abc class Animal(metaclass=abc.ABCMeta): ...

  5. Vite-vue3 架构设计

    Vite-vue3 架构设计 基础信息 Gitee项目地址:https://gitee.com/pengchenggang/vite-vue3 1 创建vite-vue3 初始化脚本 $ npm in ...

  6. day01-2-@RequestMapping和Rest

    @RequestMapping和Rest 1.@RequestMapping 1.1基本使用 @RequestMapping注解可以指定 控制器(处理器) 的某个方法的请求url 1.2@Reques ...

  7. SpringMVC深入总结--Spring中的拦截器

    Spring为我们提供了: org.springframework.web.servlet.HandlerInterceptor接口, org.springframework.web.servlet. ...

  8. String.equals(Object anObject)方法

    首先注意,equals()方法接受的是Object类型的对象,并不一定是String类型. public boolean equals(Object anObject) { //两个对象地址是否一样, ...

  9. 【At Coder begin 345】[D - Tiling] 回溯

    题目链接:problem D 解法: 比较简单.看代码. import java.io.IOException; import java.io.InputStreamReader; import ja ...

  10. (2)Python解释器的安装

    鉴于有同学在安装Python解释器出现了问题,这里再安装一下 step1,下载安装包,链接https://www.python.org/downloads/ 这里我安装的是3.6.4版本 我选择的是6 ...