VastbaseG100

基于openGauss内核开发的企业级关系型数据库。

Menu

基于中间件适配

Tomcat

Step1:在本地安装Tomcat 7.0.109

Step2:将vastbase驱动包vastbase-2.0.jar拷贝进apache-tomcat-7.0.109/lib

Step3:在Tomcat中配置数据源和驱动

打开apache-tomcat-7.0.109/conf/context.xml做如下配置:

配置Tomcat的数据源信息及驱动,其中name为自定义的数据源名称

Step4:创建web项目,指定本地Tomcat7.0.109

在Configuration中添加Local Tomcat Server,Configure选择本地安装的Tomcat 7.0.109

部署项目

Step5:在web.xml中配置数据源

其中标签对应的是在context.xml中配置的数据源名称

Step6:在JSP中使用数据库连接池

其中DSNAME中”java:comp/env/myDatasource”是固定写法,表示得到配置环境

ShardingSphere

ShardingSphere-JDBC

引入vastbase的maven依赖

数据分片

Step1:准备好分片后的数据库

Step2:引入ShardingSphere的maven依赖

Step3:配置shardingsphere

1.配置多数据源信息

2.配置分片策略

相关数据的SQL操作便会被路由到所配置的数据源分片节点上

分布式事务

以XA事务为例

Step1:导入maven依赖

Step2:编写配置类,向Spring容器中注入PlatformTransactionManager和JdbcTemplate

Step3:编写业务类,实现数据库操作并使用业务

ShardingSphere分布式事务注解@ShardingTransactionType要和Spring事务注解@Transactional一并使用才会生效;

doInsert方法向两个数据库中插入数据,之后手动抛出异常,在此之前对两个数据插入的数据都会回滚。

若要改成使用BASE事务,需要先启动seata服务器并导入Sharding-BASE依赖

读写分离

Step1:导入maven依赖

Step2:配置数据源

配置多数据源,指定主库与从库。4.1.1版本支持单主库多从库,不支持主从库之间的数据同步。

当一个线程中没有进行主库的修改,读操作会被路由到从库进行查询;若一个线程中主库进行了修改,为了保持数据一致性,读操作也会被路由到主库查询。

ShardingSphere-Proxy

首先需要下载并解压apache-shardingsphere-4.1.1-sharding-proxy-bin.tar

由于ShardingSphere-Proxy默认只支持postgresql,使用其他数据库时要先将对应java驱动包加入lib目录,因此将vastbase-2.0驱动包加入lib目录。

数据分片

在/conf/config-sharding.yaml配置数据源及数据分片策略

Step1:配置数据源

Step2:配置分片策略

Step3:配置server.yaml

在/conf/server.yaml配置代理数据库的用户、密码及逻辑数据库权限

Step4:启动shardingsphere-proxy服务

windows运行:/bin/start.bat

linux运行:/bin/start.sh

Step5:使用代理数据库

使用任何PostgreSQL客户端,与代理数据库建立连接,即可当作普通数据库来使用

用户及密码:server.yaml中的配置

Host:127.0.0.1

Port:3307

读写分离

在/conf/config-master_slave.yaml配置数据源及读写分离主从库

Step1:配置数据源

Step2:配置主从库

指定主库与从库,并将主-从数据库指定为默认数据库

Step3:配置server.yaml

在/conf/server.yaml配置代理数据库的用户、密码及逻辑数据库权限

Step4:启动shardingsphere-proxy服务

windows运行:/bin/start.bat

linux运行:/bin/start.sh

Step5:使用代理数据库

使用任何PostgreSQL客户端,与代理数据库建立连接,即可当作普通数据库来使用

用户及密码:server.yaml中的配置

Host:127.0.0.1

Port:3307