本文介绍如何快速安装OpenGauss3,OpenGauss3的安装这是笔者浓缩提炼的,并且在Spring Boot中集成使用OpenGauss3数据库。
单机版openGauss3快速环境安装
创建安装程序目标目录
下载opengauss3.0.0
解压文件
设置opengauss集群配置文件,这里设单点安装
前置系统软件包
初始化系统安装配置参数,以必须管理员root的权限运行,进入opengauss3运行初始化程序
下面要以omm的用户正式运行安装程序,首先必须把权限赋给omm
验证服务进程是否激 活
命令行登录
安装opengauss3注意事项
之前安装mogdb,影响了opengauss3的环境,/home/omm/.bashrc 里面记录了安装后的变量,如果要卸载opengauss,必须要把.bashrc 下面所有的东西都去掉。
springboot应用集成OpenGauss
SOA是一种粗粒度、松耦合服务架构,服务之间通过简单、精确定义接口进行通讯,不涉及底层编程接口和通讯模型。SOA可以看作是B/S模型、XML(标准通用标记语言的子集)/Web Service技术之后的自然延伸,面向服务架构,它可以根据需求通过网络对松散耦合的粗粒度应用组件进行分布式部署、组合和使用。服务层是SOA的基础,可以直接被应用调用,从而有效控制系统中与软件代理交互的人为依赖性。
简而言之SOA可以消除信息孤岛并实现共享业务重用,我们通过SOA可以打造下图的复杂系统,其中蓝色用户服务 ,我们可以通过springboot + OpenGauss 技术实现。

我们使用OpenGauss作为具体数据存储,使用开发工具创建一个数据库mysqltest,并在mysqltest数据库中创建一张表userennity和user1,创建语句如下:
DEMO代码
注意UserControler是首先调用的service,继而去调用实体操作。

而UserEntityControler是通过mapper的封装去调用 DAO的CRUD的操作,如下

无论是UserControler还是 UserEntityControler 都需要底层数据库对应用支持友好。
确定opengauss的用户、密码、端口及相关IP

启动服务

服务正在运行中

查看用户实体1

查看用户实体2

springboot集成opengauss的FAQ
用户名/密码不对
spring报错
而opengauss内部执行报错
根本原因分析
openGauss默认是sha256,而登录则设成只允许md5登录,所以一直识用户名和密码错误
解决方法及步骤
vi /home/omm/opengauss3/install/data/dn/postgresql.conf
修改设置
encryption_type = 1
vi /home/omm/opengauss3/install/data/dn/pg_hba.conf
增加设置
host all henley 0.0.0.0/0 md5
重启openGauss服务
用户没有对表的操作权限
spring报错
opengauss报错
解决方法及步骤
以postgres的身份登录root
切换到指定的数据库
执行授权
授权后能够正常,但是发现一个问题,现在我们是通过Postgresql的jdbc驱动去访问OpenGauss的,OpenGauss没有自己的原生jdbc驱动吗?答案是有的,而且还支持maven方式,见下。
但是笔者的运气很差,通过maven一直无法下载openGauss的core包,只能通过手动的方式下载。
再在idea把jar包引入进来,引入步骤 Project Structure --> Project Settings --> Libraries --> Add(alt +insert) --> apply
application.properties稍微修改一下
spring.datasource.url=jdbc:opengauss://192.168.30.65:15400/mytest
spring.datasource.driver-class-name=org.opengauss.Driver
最后总结
openGauss对业界知名的spring支持还算友好,直接用传统的postgresql驱动就可以接入使用,也有自己的opengauss驱动。如果使用顺利,还可以支持分布式配置、服务路由、负载均衡、熔断限流、链路监控这些功能,事实上在微服务的技术框架上也是支持的。
源代码体验:
https://gitee.com/angryart/springboot-opengauss
本文介绍如何快速安装OpenGauss3,OpenGauss3的安装这是笔者浓缩提炼的,并且在Spring Boot中集成使用OpenGauss3数据库。
单机版openGauss3快速环境安装
创建安装程序目标目录
下载opengauss3.0.0
解压文件
设置opengauss集群配置文件,这里设单点安装
[root@enmoedu1 opengauss3]# cat cluster_config.xml "/>前置系统软件包
初始化系统安装配置参数,以必须管理员root的权限运行,进入opengauss3运行初始化程序
下面要以omm的用户正式运行安装程序,首先必须把权限赋给omm
验证服务进程是否激 活
命令行登录
安装opengauss3注意事项
之前安装mogdb,影响了opengauss3的环境,/home/omm/.bashrc 里面记录了安装后的变量,如果要卸载opengauss,必须要把.bashrc 下面所有的东西都去掉。
springboot应用集成OpenGauss
SOA是一种粗粒度、松耦合服务架构,服务之间通过简单、精确定义接口进行通讯,不涉及底层编程接口和通讯模型。SOA可以看作是B/S模型、XML(标准通用标记语言的子集)/Web Service技术之后的自然延伸,面向服务架构,它可以根据需求通过网络对松散耦合的粗粒度应用组件进行分布式部署、组合和使用。服务层是SOA的基础,可以直接被应用调用,从而有效控制系统中与软件代理交互的人为依赖性。
简而言之SOA可以消除信息孤岛并实现共享业务重用,我们通过SOA可以打造下图的复杂系统,其中蓝色用户服务 ,我们可以通过springboot + OpenGauss 技术实现。
我们使用OpenGauss作为具体数据存储,使用开发工具创建一个数据库mysqltest,并在mysqltest数据库中创建一张表userennity和user1,创建语句如下:
DEMO代码
注意UserControler是首先调用的service,继而去调用实体操作。

而UserEntityControler是通过mapper的封装去调用 DAO的CRUD的操作,如下
无论是UserControler还是 UserEntityControler 都需要底层数据库对应用支持友好。
确定opengauss的用户、密码、端口及相关IP
启动服务
服务正在运行中
查看用户实体1
查看用户实体2
springboot集成opengauss的FAQ
用户名/密码不对
spring报错
而opengauss内部执行报错
根本原因分析
openGauss默认是sha256,而登录则设成只允许md5登录,所以一直识用户名和密码错误
解决方法及步骤
vi /home/omm/opengauss3/install/data/dn/postgresql.conf
修改设置
encryption_type = 1
vi /home/omm/opengauss3/install/data/dn/pg_hba.conf
增加设置
host all henley 0.0.0.0/0 md5
重启openGauss服务
用户没有对表的操作权限
spring报错
opengauss报错
解决方法及步骤
以postgres的身份登录root
切换到指定的数据库
执行授权
授权后能够正常,但是发现一个问题,现在我们是通过Postgresql的jdbc驱动去访问OpenGauss的,OpenGauss没有自己的原生jdbc驱动吗?答案是有的,而且还支持maven方式,见下。
但是笔者的运气很差,通过maven一直无法下载openGauss的core包,只能通过手动的方式下载。
再在idea把jar包引入进来,引入步骤 Project Structure --> Project Settings --> Libraries --> Add(alt +insert) --> apply
application.properties稍微修改一下
spring.datasource.url=jdbc:opengauss://192.168.30.65:15400/mytest
spring.datasource.driver-class-name=org.opengauss.Driver
最后总结
openGauss对业界知名的spring支持还算友好,直接用传统的postgresql驱动就可以接入使用,也有自己的opengauss驱动。如果使用顺利,还可以支持分布式配置、服务路由、负载均衡、熔断限流、链路监控这些功能,事实上在微服务的技术框架上也是支持的。
源代码体验:
https://gitee.com/angryart/springboot-opengauss