首页 > 数据库 >KingbaseES数据库配置Hikari数据源

KingbaseES数据库配置Hikari数据源

时间:2023-09-18 16:37:28浏览次数:36  
标签:jdk1.8 kingbase8 JAVA lib 数据源 jar 333 Hikari KingbaseES

Hikari是一个高性能的数据库连接池,它是Spring Boot 2.x中的默认数据源。

一、下载驱动

打开下面网址:选择对应平台的jdbc驱动程序。

人大金仓-成为世界卓越的数据库产品与服务提供商 (kingbase.com.cn)

这里以x86平台为例:

下载完成后目录里面包含以下文件:根据项目的JDK版本选择对应的驱动

--kingbase8-8.6.0.jar>= jdk 1.8
kingbase8-8.6.0.jar    
--kingbase8-8.6.0.jar = jdk 1.6
kingbase8-8.6.0.jre6.jar
--kingbase8-8.6.0.jar = jdk 1.7
kingbase8-8.6.0.jre7.jar
--kingbase8-8.6.0.jar>= jdk 1.8
postgresql-42.2.9.jar
--kingbase8-8.6.0.jar = jdk 1.6
postgresql-42.2.9.jre6.jar
--kingbase8-8.6.0.jar = jdk 1.7
postgresql-42.2.9.jre7.jar

二、上传驱动jar包到maven仓库

以本地仓库为例:

--执行命令安装驱动到本地仓库
mvn install:install-file -Dfile=C:\DbTools\Interface\kingbase8-8.6.0.jar -DgroupId=com.kingbase8 -DartifactId=kingbase8 -Dversion=8.6.0 -Dpackaging=jar

安装过程:

D:\JAVA\jdk1.8.0_333\bin\java.exe -Dmaven.multiModuleProjectDirectory=C:\Users\realGuob\Desktop\Work\code\Hikari -Djansi.passthrough=true "-Dmaven.home=C:\Program Files\JetBrains\IntelliJ IDEA 2022.3.3\plugins\maven\lib\maven3" "-Dclassworlds.conf=C:\Program Files\JetBrains\IntelliJ IDEA 2022.3.3\plugins\maven\lib\maven3\bin\m2.conf" "-Dmaven.ext.class.path=C:\Program Files\JetBrains\IntelliJ IDEA 2022.3.3\plugins\maven\lib\maven-event-listener.jar" "-javaagent:C:\Program Files\JetBrains\IntelliJ IDEA 2022.3.3\lib\idea_rt.jar=58778:C:\Program Files\JetBrains\IntelliJ IDEA 2022.3.3\bin" -Dfile.encoding=UTF-8 -classpath "C:\Program Files\JetBrains\IntelliJ IDEA 2022.3.3\plugins\maven\lib\maven3\boot\plexus-classworlds-2.6.0.jar;C:\Program Files\JetBrains\IntelliJ IDEA 2022.3.3\plugins\maven\lib\maven3\boot\plexus-classworlds.license" org.codehaus.classworlds.Launcher -Didea.version=2022.3.3 install:install-file -Dfile=C:\DbTools\Interface\kingbase8-8.6.0.jar -DgroupId=com.kingbase8 -DartifactId=kingbase8 -Dversion=8.6.0 -Dpackaging=jar
[WARNING] 
[WARNING] Some problems were encountered while building the effective settings
[WARNING] Unrecognised tag: 'mirror' (position: START_TAG seen ...0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">\r\n    <mirror>... @5:13)  @ C:\Users\realGuob\.m2\settings.xml, line 5, column 13
[WARNING] 
[INFO] Scanning for projects...
[INFO] 
[INFO] -------------------------< org.example:Hikari >-------------------------
[INFO] Building Hikari 1.0-SNAPSHOT
[INFO] --------------------------------[ jar ]---------------------------------
[INFO] 
[INFO] --- maven-install-plugin:2.4:install-file (default-cli) @ Hikari ---
[INFO] Installing C:\DbTools\Interface\kingbase8-8.6.0.jar to C:\Users\realGuob\.m2\repository\com\kingbase8\kingbase8\8.6.0\kingbase8-8.6.0.jar
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  0.685 s
[INFO] Finished at: 2023-05-31T18:17:48+08:00
[INFO] ------------------------------------------------------------------------

进程已结束,退出代码0

没有报错说明已成功安装,安装成功后建议更新下maven索引。

三、配置pom.xml

添加如下依赖:

<dependencies>
        <dependency>
            <groupId>com.zaxxer</groupId>
            <artifactId>HikariCP</artifactId>
            <version>4.0.3</version>
        </dependency>
        <dependency>
            <groupId>com.kingbase8</groupId>
            <artifactId>kingbase8</artifactId>
            <version>8.6.0</version>
        </dependency>
</dependencies>

添加完成后刷新或者使用maven重新加载下项目。

四、Hikari数据源测试

1.创建HikariConfig对象设置数据库的相关属性:用户名、密码、端口号、数据库名称、数据源对象等

import com.zaxxer.hikari.HikariConfig;
import com.zaxxer.hikari.HikariDataSource;

public class DBUtil {
    static final HikariDataSource DS;
    static {
        HikariConfig config = new HikariConfig();
        config.setAutoCommit(true);
        config.setDataSourceClassName("com.kingbase8.ds.KBSimpleDataSource");
        config.setUsername("system");
        config.setPassword("system");
        config.addDataSourceProperty("serverName", "192.168.10.43");
        config.addDataSourceProperty("portNumber", 5432);
        config.addDataSourceProperty("databaseName", "test");
        DS = new HikariDataSource(config);
    }
    public static void close() {
        DS.close();
    }
}

2.测试创建的数据源对象:

import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

public class Test {
    public static void main(String[] args) {
        try (Connection conn = DBUtil.DS.getConnection();
             Statement stmt = conn.createStatement();
             ResultSet rs = stmt.executeQuery("select * from tb limit 10")) {
            while (rs.next()) {
                System.out.println(rs.getLong("id") + "\t" + rs.getDate("pdate") + "\t" + rs.getString("info"));
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }
}

运行测试用例结果输出:

D:\JAVA\jdk1.8.0_333\bin\java.exe "-javaagent:C:\Program Files\JetBrains\IntelliJ IDEA 2022.3.3\lib\idea_rt.jar=65176:C:\Program Files\JetBrains\IntelliJ IDEA 2022.3.3\bin" -Dfile.encoding=UTF-8 -classpath D:\JAVA\jdk1.8.0_333\jre\lib\charsets.jar;D:\JAVA\jdk1.8.0_333\jre\lib\deploy.jar;D:\JAVA\jdk1.8.0_333\jre\lib\ext\access-bridge-64.jar;D:\JAVA\jdk1.8.0_333\jre\lib\ext\cldrdata.jar;D:\JAVA\jdk1.8.0_333\jre\lib\ext\dnsns.jar;D:\JAVA\jdk1.8.0_333\jre\lib\ext\jaccess.jar;D:\JAVA\jdk1.8.0_333\jre\lib\ext\jfxrt.jar;D:\JAVA\jdk1.8.0_333\jre\lib\ext\localedata.jar;D:\JAVA\jdk1.8.0_333\jre\lib\ext\nashorn.jar;D:\JAVA\jdk1.8.0_333\jre\lib\ext\sunec.jar;D:\JAVA\jdk1.8.0_333\jre\lib\ext\sunjce_provider.jar;D:\JAVA\jdk1.8.0_333\jre\lib\ext\sunmscapi.jar;D:\JAVA\jdk1.8.0_333\jre\lib\ext\sunpkcs11.jar;D:\JAVA\jdk1.8.0_333\jre\lib\ext\zipfs.jar;D:\JAVA\jdk1.8.0_333\jre\lib\javaws.jar;D:\JAVA\jdk1.8.0_333\jre\lib\jce.jar;D:\JAVA\jdk1.8.0_333\jre\lib\jfr.jar;D:\JAVA\jdk1.8.0_333\jre\lib\jfxswt.jar;D:\JAVA\jdk1.8.0_333\jre\lib\jsse.jar;D:\JAVA\jdk1.8.0_333\jre\lib\management-agent.jar;D:\JAVA\jdk1.8.0_333\jre\lib\plugin.jar;D:\JAVA\jdk1.8.0_333\jre\lib\resources.jar;D:\JAVA\jdk1.8.0_333\jre\lib\rt.jar;D:\app\virtual\product\12.2.0\dbhome_1\jdbc\lib\ojdbc8.jar;C:\Users\realGuob\Desktop\Work\code\Hikari\target\test-classes;C:\Users\realGuob\Desktop\Work\code\Hikari\target\classes;C:\Users\realGuob\.m2\repository\com\zaxxer\HikariCP\4.0.3\HikariCP-4.0.3.jar;C:\Users\realGuob\.m2\repository\com\kingbase8\kingbase8\8.6.0\kingbase8-8.6.0.jar;C:\Users\realGuob\.m2\repository\org\slf4j\slf4j-api\1.7.30\slf4j-api-1.7.30.jar;C:\Users\realGuob\.m2\repository\org\slf4j\slf4j-simple\1.7.30\slf4j-simple-1.7.30.jar Test
[main] INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Starting...
[main] INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Start completed.
1    2023-01-01    c3b6f7eeb6
2    2023-01-01    2a7c3bf29a
3    2023-01-01    a4c40621c7
4    2023-01-01    422733f11f
5    2023-01-01    ce3f7bf0b7
6    2023-01-01    fa14aba9aa
7    2023-01-01    bdf13c7e1a
8    2023-01-01    02f2c2e404
9    2023-01-01    e61c473905
10    2023-01-01    20e44227b2

进程已结束,退出代码0

标签:jdk1.8,kingbase8,JAVA,lib,数据源,jar,333,Hikari,KingbaseES
From: https://www.cnblogs.com/kingbase/p/17561015.html

相关文章

  • KingbaseES V8R3集群运维案例之---主库数据库服务down后failover切换详解
    案例说明:对KingbaseESV8R3集群,主库数据库服务down后,failover切换进行分析,详解其执行切换的过程,本案例可用于对KingbaseESV8R3集群failover故障的分析参考。适用版本:KingbaseESV8R3集群架构:node_id|hostname|port|status|lb_weight|role|select_cnt......
  • KingbaseES V8R6备份恢复案例之---备份crond计划任务的调整
    案例说明:在KingbaseESV8R6数据库通常备份建立的crond任务,默认由root用户建立,写入到/etc/cron.d/KINGBASECRON文件中,在有的生产环境限制了普通用户使用root的权限,创建计划任务可能失败,新的KingbaseESV8R6版本,将计划任务由数据库用户创建,比如通用机环境,将由kingbase用户创建计划......
  • KingbaseES V8R6集群部署案例之---openEuler系统脚本部署故障
    案例说明:在openEuler系统下通过脚本方式部署KingbaseESV8R6集群,脚本执行过程中,加载vip失败。本次故障问题,主要是因为openEuler系统shell和脚本的不兼容引起。适用版本:KingbaseESV8R6系统环境:openEuler-22.03-LTS一、问题现象通过脚本方式部署KingbaseESV8R6集群,脚本执......
  • KingbaseES V8R6集群运维案例之---sys_monitor.sh start启动动态库错误
    案例说明:在KingbaseESV8R6集群部署了postgis后,执行sys_monitor.shstart启动集群时,出现动态库错误,如下图所示:适用版本:KingbaseESV8R6操作系统:KylinV10Server一、问题分析1、手工执行sys_ctl启动数据库服务,启动正常。2、执行sh-xsys_monitor.shstart查看脚本启动......
  • KingbaseES V8R6集群备份恢复案例之---备份初始化“can not find primary node”故障
    案例说明:KingbaseESV8R6集群,备库作为repo-path节点,建立类型为‘cluster’模式的备份,在执行sys_backup.shinit时,出现“cannotfindprimarynode”故障。故障如下图所示:适用版本:KingbaseESV8R6一、集群及备份配置1、集群节点状态[kingbase@node101bin]$./repmgrclus......
  • KingbaseES V8R3集群运维案例---failover切换故障分析
    案例说明:KingbaseESV8R3集群主库数据库服务重启后,failover切换失败,分析failover失败的具体原因。适用版本:KingbaseESV8R3一、集群架构node13----->主库(primary)node25----->管理备库(standby)node58----->备库(standby)二、故障现象1主2备集群,172.31.*......
  • KingbaseES V8R3集群运维案例之---流复制异步同步及全同步模式配置
    案例说明:通过案例描述KingbaseESV8R3集群异步、同步及全同步强一致性配置,本案例为一主二备的架构。适用版本:KingbaseESV8R3集群架构:集群复制配置参数说明:1)sync_flag[kingbase@node101bin]$cat../etc/HAmodule.conf|grep-isync_#1->synchronouscluster,0->async......
  • kingbaseES sql 优化技巧汇总
    1、整体思路针对业务系统的出现的慢sql我们的优化步骤大概分为以下几步1、识别高负载语句2、收集性能相关的数据3、确定性能问题产生的原因4、实施优化手段下面我们针对这几个步骤展开进行讲解1、识别高负载语句金仓数据库kingbaseES针对满语句识别有以下几个工具•s......
  • kingbaseES 优化之操作系统瓶颈排查
    针对操作系统性能瓶颈的判断和排查是数据库优化工作的一项重要技能,尤其是针对实例整体优化操作系统的性能瓶颈排查无外乎四个方面CPU、内存、磁盘、网络针对这四个方面整理了一些相关心得和大家分享。在判断系统瓶颈之前首先我们要知道操作系统资源的极限值在哪里收集系统信......
  • kingbaseES 优化之数据库瓶颈排查
    针对数据库的性能瓶颈排查方法分为两个层次1、实例级别性能问题排查2、语句级别性能问题排查实例级别实例级别性能问题排查用来分析数据库实例整体是否存在性能瓶颈,然后根据排除出的疑似问题进行实例级别参数的优化。使用场景包括1、压测场景下数据库整体优化2、上线之前数......