1 Star 0 Fork 102

douxin / openGauss-connector-jdbc

Create your Gitee Account
Explore and code with more than 12 million developers,Free private repositories !:)
Sign up
Clone or Download
contribute
Sync branch
Cancel
Notice: Creating folder will generate an empty file .keep, because not support in Git
Loading...
README
BSD-2-Clause

openGauss Logo

什么是openGauss-connector-JDBC

openGauss是一款开源的关系型数据库管理系统,它具有多核高性能、全链路安全性、智能运维等企业级特性。 openGauss内核早期源自开源数据库PostgreSQL,融合了华为在数据库领域多年的内核经验,在架构、事务、存储引擎、优化器及ARM架构上进行了适配与优化。作为一个开源数据库,期望与广泛的开发者共同构建一个多元化技术的开源数据库社区。

Java数据库连接,(Java Database Connectivity,简称JDBC)是Java语言中用来规范客户端程序如何来访问数据库的应用程序接口,提供了诸如查询和更新数据库中数据的方法。openGauss-connector-JDBC就是提供给用户通过Java语言访问数据库的应用程序接口。用户可以使用openGauss官网提供的jar包(参考直接获取部分),也可以自行构建jar包(参考从源码构建部分)以使用JDBC操作数据库。

直接获取

在使用openGauss JDBC 驱动之前,请确保您的服务器已经可以正常运行 openGauss 数据库(参考openGauss快速入门)。

从maven中央仓库获取

Java开发者可从maven中央仓库中直接获取jar包,坐标如下:

<groupId>org.opengauss</groupId>
<artifactId>opengauss-jdbc</artifactId>

从社区官网下载安装包

  1. 在官网下载安装包。

    点击链接,在openGauss Connectors部分下,根据您部署数据库的服务器的对应系统选择JDBC_${version}的下载按钮。${version}即您需要的版本号。

  2. 解压压缩包。

    tar -zxvf openGauss-${version}-JDBC.tar.gz
  3. 解压后可以看到同级目录下出现了两个jar包,分别是opengauss-jdbc-${version}.jar和postgresql.jar。opengauss-jdbc-${version}.jar是可以与PG-JDBC共存的包, 包名自2.0.1之后的版本全部从org.postgresql变更为org.opengauss,并且驱动名称从jdbc:postgresql://替换为jdbc:opengauss://。目前从maven中央仓库中获取的也是这个包。

从源码构建

概述

openGauss JDBC 驱动目前提供3种构建方式。一是通过一键式脚本build.sh进行构建。二是通过脚本进行逐步构建。三是通过mvn命令进行构建。

操作系统和软件依赖要求

openGauss JDBC 驱动的生成支持以下操作系统:

  • CentOS 7.6(x86架构)
  • openEuler-20.03-LTS(aarch64架构)
  • Windows

适配其他系统,参照博客openGauss数据库编译指导

以下表格列举了编译openGauss的软件要求。

建议使用从列出的操作系统安装盘或安装源中获取的以下依赖软件的默认安装包进行安装。如果不存在以下软件,请参考推荐的软件版本。

软件及环境依赖要求如下:

软件及环境要求 推荐版本
maven 3.6.1
java 1.8
Git Bash (Windows) 无推荐版本
zip/unzip (Windows) 无推荐版本

下载openGauss-connector-jdbc源码

可以从开源社区下载openGauss-connector-jdbc源码。

git clone https://gitee.com/opengauss/openGauss-connector-jdbc.git

现在我们已经拥有完整的openGauss-connector-jdbc代码,把它存储在以下目录中(以sda为例)。

  • /sda/openGauss-connector-jdbc

编译第三方软件(可跳过)

在构建openGauss-connector-jdbc之前,需要先编译openGauss依赖的开源及第三方软件。我们已经在openGauss-connector-jdbc目录下的open_source就提供了编译好的开源及第三方软件,直接使用我们提供的open_source可以跳过该部分。这些开源及第三方软件存储在openGauss-third_party代码仓库中,通常只需要构建一次。如果开源软件有更新,需要重新构建软件。

用户也可以直接从binarylibs库中获取开源软件编译和构建的输出文件。

如果你想自己编译第三方软件,请到openGauss-third_party仓库查看详情。

执行完上述脚本后,最终编译和构建的结果保存在与openGauss-third_party同级的binarylibs目录下。在编译openGauss-connector-jdbc时会用到这些文件。

jar包生成

使用一键式脚本生成jar包(Linux)

openGauss-connector-jdbc中的build.sh是编译过程中的重要脚本工具。该工具可快速进行代码编译和打包。

参数说明请见以下表格。

选项 缺省值 参数 说明
-3rd ${Code directory}/binarylibs [binarylibs path] 指定binarylibs路径。建议将该路径指定为open_source/或者/sda/openGauss-connector-jdbc/open_source/。如果您有自己编译好openGauss依赖的的第三方库,也可以指定为编译好的三方库路径,如/sda/binarylibs。

注意

  • -3rd [binarylibs path]为binarylibs的路径。默认设置为当前代码文件夹下存在binarylibs,因此如果binarylibs被移至openGauss-server中,或者在openGauss-server中创建了到binarylibs的软链接,则不需要指定此参数。但请注意,这样做的话,该文件很容易被git clean命令删除。

现在你已经知晓build.sh的用法,只需使用如下格式的命令即可编译openGauss-connector-jdbc。

  1. 执行如下命令进入到代码目录:

    [user@linux sda]$ cd /sda/openGauss-connector-jdbc
  2. 执行如下命令使用build.sh进行打包:

    [user@linux openGauss-connector-jdbc]$ sh build.sh -3rd open_source/ 

    结束后会显示如下内容,表示打包成功:

    Successfully make postgresql.jar
    opengauss-jdbc-${version}.jar
    postgresql.jar
    Successfully make jdbc jar package
    now, all packages has finished!

    成功编译后会出现两个jar包,分别是opengauss-jdbc-${version}.jar与postgresql.jar。编译后的jar包路径为:/sda/openGauss-connector-jdbc/output

使用一键式脚本生成jar包(Windows)

  1. 准备 Java 与 Maven环境, 以及可以在Git Bash中使用的 zip/unzip 命令。

  2. 执行如下命令进入到代码目录:

    [user@linux openGauss-connector-jdbc]$ cd /sda/openGauss-connector-jdbc
  3. 运行脚本build_on_windows_git.sh:

    [user@linux openGauss-connector-jdbc]$ sh build_on_windows_git.sh

    脚本执行成功后,会显示如下结果:

    begin run
    Successfully make postgresql.jar package in /sda/openGauss-connector-jdbc/output/postgresql.jar
    Successfully make opengauss-jdbc jar package in /sda/openGauss-connector-jdbc/output/opengauss-jdbc-${version}.jar
    Successfully make jdbc jar package in /sda/openGauss-connector-jdbc/openGauss-${version}-JDBC.tar.gz

    成功编译后会出现两个jar包,分别是opengauss-jdbc-${version}.jar与postgresql.jar。编译后的jar包路径为:/sda/openGauss-connector-jdbc/output/。此外还会出现这两个jar包的压缩包openGauss-${version}-JDBC.tar.gz,压缩包路径为 /sda/openGauss-connector-jdbc/

使用mvn命令生成jar包(Windows 或 Linux)

  1. 准备 Java 与 Maven环境, 若在Windows环境下还需准备可以在Git Bash中使用的 zip/unzip 命令。

  2. 执行如下命令进入到代码目录:

    [user@linux sda]$ cd /sda/openGauss-connector-jdbc
  3. 使用demo准备脚本:

    [user@linux openGauss-connector-jdbc]$ sh prepare_demo.sh
  4. 修改根目录下的pom.xml:

    将modules部分的module由jdbc改为pgjdbc, 如下所示。

    <modules>
      <module>pgjdbc</module>
    </modules>
  5. 执行mvn命令:

    [user@linux openGauss-connector-jdbc]$ mvn clean install -Dmaven.test.skip=true

    Linux系统下构建成功后会显示如下结果:

    [INFO] Reactor Summary:
    [INFO] 
    [INFO] openGauss JDBC Driver ............................. SUCCESS [5.344s]
    [INFO] PostgreSQL JDBC Driver aggregate .................. SUCCESS [0.004s]
    [INFO] ------------------------------------------------------------------------
    [INFO] BUILD SUCCESS
    [INFO] ------------------------------------------------------------------------
    [INFO] Total time: 5.439s
    [INFO] Finished at: Tue Aug 31 21:55:01 EDT 2021
    [INFO] Final Memory: 44M/1763M
    [INFO] ------------------------------------------------------------------------

    构建成功后会出现两个jar包,分别是opengauss-jdbc-${version}.jar与original-opengauss-jdbc-${version}.jar。jar包路径为/sda/openGauss-connector-jdbc/pgjdbc/target/。

JDBC的使用

参考基于JDBC开发

文档

更多安装指南、教程和API请参考用户文档

社区

治理

查看openGauss是如何实现开放治理

交流

贡献

欢迎大家来参与贡献。详情请参阅我们的社区贡献

发行说明

请参见发行说明

许可证

MulanPSL-2.0

Copyright (c) 1997, PostgreSQL Global Development Group All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

About

openGauss jdbc connector expand collapse
Java
BSD-2-Clause
Cancel

Releases

No release

Contributors

All

Activities

Load More
can not load any more
Java
1
https://gitee.com/ywzq1161327784/openGauss-connector-jdbc.git
git@gitee.com:ywzq1161327784/openGauss-connector-jdbc.git
ywzq1161327784
openGauss-connector-jdbc
openGauss-connector-jdbc
master

Search