HikariCP 升级到 Debian 10 (mariadb)

Posted

技术标签:

【中文标题】HikariCP 升级到 Debian 10 (mariadb)【英文标题】:HikariCP upgrade to Debian 10 (mariadb) 【发布时间】:2021-08-11 15:25:39 【问题描述】:

由于在 Debian 10 上将 mysql 替换为 mariadb,我的 Java 项目出现了数据库连接问题。我正在使用 HikariCP 进行连接,我更新了代码以便它可以与 mariadb 一起使用:

    HikariConfig hikariConfig = new HikariConfig();
    hikariConfig.setMaximumPoolSize(10);
    hikariConfig.setDriverClassName("org.mariadb.jdbc.Driver"); // added after internet research about hikaricp and mariadb
    hikariConfig.setJdbcUrl("jdbc:mariadb://localhost:3306/" + db);
    hikariConfig.setUsername(user);
    hikariConfig.setPassword(pass);

我升级了我的 HikariCP 设置:我用 3.4.5 替换了 2.7.8(尽管我不知道有什么区别)并在查看 this post 后添加了 mysql-connector 依赖项(顺便说一句,没有此版本人的 mysql-connector 在他的 pom.xml 中,但我不得不放一个,所以我选择了 6.0.6),我仍然收到 Java 错误:

java.lang.RuntimeException: Failed to load driver class org.mariadb.jdbc.Driver in either of HikariConfig class loader or Thread context classloader
at com.zaxxer.hikari.HikariConfig.setDriverClassName(HikariConfig.java:486)

pom.xml 依赖项

  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
    
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <scope>runtime</scope>
        <version>6.0.6</version>
    </dependency>
    
    <dependency>
        <groupId>commons-io</groupId>
        <artifactId>commons-io</artifactId>
        <version>2.6</version>
    </dependency>
    <dependency>
        <groupId>net.md-5</groupId>
        <artifactId>bungeecord-api</artifactId>
        <version>1.12-SNAPSHOT</version>
    </dependency>
    <dependency>
        <groupId>com.zaxxer</groupId>
        <artifactId>HikariCP</artifactId>
        <version>3.4.5</version>
    </dependency>
  </dependencies>

感谢您阅读我,希望有人有解决方案

【问题讨论】:

【参考方案1】:

你现在使用的是 mariadb,不是 mysql。改变

<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <scope>runtime</scope>
    <version>6.0.6</version>
</dependency>

<dependency>
    <groupId>org.mariadb.jdbc</groupId>
    <artifactId>mariadb-java-client</artifactId>
    <scope>runtime</scope>
    <version>2.7.3</version>
</dependency>

【讨论】:

以上是关于HikariCP 升级到 Debian 10 (mariadb)的主要内容,如果未能解决你的问题,请参考以下文章

从 Debian Stretch 升级到 Buster 后出现 OCS 错误

debian firefox 怎么升级

005-spring boot 2.0.4-jdbc升级

debian下,升级包安装时依赖于内核版本吗?

debian8.5怎么安装xfce

DEbian Squeeze 将 PHP 5.3 升级到 PHP 5.5