HikariPool OracleDriver was not found, trying direct instantiation. + Driver does not support g

本文围绕Spring Boot 2.4配置数据库连接池展开,查询时出现报错但仍能查出数据,如提示oracle.jdbc.driver.OracleDriver未找到,建议使用oracle.jdbc.OracleDriver。还遇到HikariPool相关错误,怀疑与数据库版本有关,虽不影响使用,但仍需进一步测试。

springboot2.4 配置数据库连接池

type: com.zaxxer.hikari.HikariDataSource

查询的时候 报错,但是依然可以查询出数据,

2020-12-01 15:51:33.766  INFO 35480 --- [nio-8080-exec-7] com.zaxxer.hikari.HikariDataSource       : HikariPool-1 - Starting...
2020-12-01 15:51:33.770  WARN 35480 --- [nio-8080-exec-7] com.zaxxer.hikari.util.DriverDataSource  : Registered driver with driverClassName=oracle.jdbc.driver.OracleDriver was not found, trying direct instantiation.
2020-12-01 15:51:34.033  INFO 35480 --- [nio-8080-exec-7] com.zaxxer.hikari.pool.PoolBase          : HikariPool-1 - Driver does not support get/set network timeout for connections. (oracle.jdbc.driver.T4CConnection.getNetworkTimeout()I)
2020-12-01 15:51:34.044  INFO 35480 --- [nio-8080-exec-7] com.zaxxer.hikari.HikariDataSource       : HikariPool-1 - Start completed.

oracle.jdbc.driver.OracleDriver was not found, trying direct instantiation. 的问题查询之后参考了   https://www.cnblogs.com/6324/p/10903960.html


1
spring.datasource.driver-class-name=oracle.jdbc.driver.OracleDriver
  

改为

1
spring.datasource.driver-class-name=oracle.jdbc.OracleDriver

【原因】
Oracle 9i 之后,建议使用 oracle.jdbc.OracleDriver ,而不是 oracle.jdbc.driver.OracleDriver。

另外一个错误 HikariPool-1 - Driver does not support get/set network timeout for connections,

在yml文件中添加 Hikari的配置之后

  datasource:    
    username: qianyi
    password: Xia123456
    url: jdbc:oracle:thin:@localhost:1521:orcl
    driver-class-name: oracle.jdbc.OracleDriver
    type: com.zaxxer.hikari.HikariDataSource
  hikari:
    minimum-idle: 5
    # 空闲连接存活最大时间,默认600000(10分钟)
    idle-timeout: 180000
    # 连接池最大连接数,默认是10
    maximum-pool-size: 10
    # 此属性控制从池返回的连接的默认自动提交行为,默认值:true
    auto-commit: true
    # 连接池名称
    pool-name: MyHikariCP
    # 此属性控制池中连接的最长生命周期,值0表示无限生命周期,默认1800000即30分钟
    max-lifetime: 1800000
    # 数据库连接超时时间,默认30秒,即30000
    connection-timeout: 30000
    connection-test-query: SELECT 1 

查询错误变成了   HikariPool-1 - Driver does not support get/set network timeout for connections. (oracle.jdbc.driver.T4CConnection.getNetworkTimeout()I)

这个问题去仓库那搜了下,https://github.com/brettwooldridge/HikariCP/issues/743  

感觉是和数据库版本有关系,目前我的数据库版本是 oracle  11.2.0.1.0   这个待定,测试下。通过单元测试,发现这个确实不影响使用,

看了这哥们的帖子,https://blog.youkuaiyun.com/heshengfu1211/article/details/90553440?utm_medium=distribute.pc_relevant.none-task-blog-OPENSEARCH-1.control&depth_1-utm_source=distribute.pc_relevant.none-task-blog-OPENSEARCH-1.control 

用的  oracle数据库版本:oracle 12C ,但是启动也还是有这个错误。


2019-05-26 23:38:11.352  INFO 16880 --- [           main] o.s.web.context.ContextLoader            : Root WebApplicationContext: initialization completed in 2140 ms
2019-05-26 23:38:11.492  INFO 16880 --- [           main] com.zaxxer.hikari.HikariDataSource       : HikariPool-1 - Starting...
2019-05-26 23:38:11.495  WARN 16880 --- [           main] com.zaxxer.hikari.util.DriverDataSource  : Registered driver with driverClassName=oracle.jdbc.driver.OracleDriver was not found, trying direct instantiation.
2019-05-26 23:38:12.353  INFO 16880 --- [           main] com.zaxxer.hikari.pool.PoolBase          : HikariPool-1 - Driver does not support get/set network timeout for connections. (oracle.jdbc.driver.T4CConnection.getNetworkTimeout()I)
2019-05-26 23:38:12.359  INFO 16880 --- [           main] com.zaxxer.hikari.HikariDataSource       : HikariPool-1 - Start completed.

 

 

 

<think>好的,我现在需要解决用户提到的yum安装过程中出现的HTTP 404错误问题。根据用户提供的引用内容,我需要综合这些信息,并结合之前的回答来给出解决方案。 首先,用户提到的错误信息主要是关于无法从镜像URL获取repomd.xml文件,导致404 Not Found。这可能是因为软件源的配置有问题,比如仓库URL不正确或已过时,或者系统版本与仓库不兼容。例如,引用[1]中的例子显示,用户可能在使用CentOS 6的镜像,但该镜像可能已被移除或路径改变。引用[3]和[4]提到替换$releasever为具体版本号,并更换为阿里云镜像源,这应该能解决问题。 接下来,我需要考虑用户的环境。用户可能在CentOS 7或更高版本上操作,但仓库配置中仍引用了旧的CentOS 6路径,或者变量如$releasever未被正确解析,导致URL错误。此外,镜像站点的可用性也是一个因素,比如某些镜像可能不再维护。 解决方案步骤应包括检查仓库配置、替换错误的变量、更新镜像源到可靠的国内源(如阿里云),以及清理缓存。需要分步骤说明,确保用户能逐步操作。同时,要提醒用户注意系统版本与仓库的匹配,以及如何处理特定于Erlang或其他软件的特殊情况,如引用[2]中的问题可能需要单独配置正确的仓库。 另外,用户之前的问题中提到了使用-y参数自动安装,因此在解决方案中需保持命令的一致性,使用sudo和-y参数。最后,需要验证步骤,确保用户操作后问题解决,并提示如何防止类似问题再次发生,比如定期更新仓库配置。</think>以下是解决$yum$安装过程中出现`HTTP 404 Not Found Trying other mirror`错误的完整方案,结合引用内容及实际运维经验整理: --- ### 一、错误根本原因 1. **仓库URL失效**:官方镜像站停止维护旧版本(如CentOS 6)或路径变更[^1][^4] 2. **变量解析错误**:YUM仓库配置中的`$releasever`、`$basearch`变量未能正确解析系统版本/架构[^3] 3. **网络限制**:国内访问国外镜像站速度慢或被屏蔽(如packages.erlang-solutions.com)[^2] --- ### 二、分步解决方案 #### ▶ 步骤1:验证系统版本与仓库匹配性 ```bash cat /etc/redhat-release # 查看实际系统版本(如CentOS 7.9) uname -m # 确认系统架构(x86_64/aarch64) ``` - **关键点**:若系统为CentOS 7,但仓库配置中仍引用`$releasever=6`会导致404[^1] #### ▶ 步骤2:手动修复仓库变量(针对CentOS 7) ```bash sudo sed -i 's/$releasever/7/g' /etc/yum.repos.d/*.repo # 全局替换变量[^3] sudo sed -i 's/$basearch/x86_64/g' /etc/yum.repos.d/*.repo # 明确架构 ``` #### ▶ 步骤3:切换国内镜像源(阿里云示例) ```bash sudo curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo # 覆盖基础源[^4] sudo curl -o /etc/yum.repos.d/epel.repo https://mirrors.aliyun.com/repo/epel-7.repo # EPEL扩展源 ``` #### ▶ 步骤4:清理缓存并重建元数据 ```bash sudo yum clean all # 清除所有缓存 sudo rm -rf /var/cache/yum # 强制清空缓存目录 sudo yum makecache # 重建元数据[^3] ``` #### ▶ 步骤5:针对性修复特殊仓库(如Erlang) ```bash # 错误示例[^2]的修复方案 sudo rpm -Uvh https://packages.erlang-solutions.com/erlang-solutions-2.0-1.noarch.rpm sudo sed -i 's#https://packages.erlang-solutions.com#https://mirror.erlang-solutions.com#g' /etc/yum.repos.d/erlang_solutions.repo ``` --- ### 三、验证操作 ```bash sudo yum install -y telnet # 测试基础仓库 sudo yum install -y epel-release # 测试扩展仓库 yum repolist all # 检查所有仓库状态 ``` --- ### 四、高级场景处理 1. **CentOS 8/Stream用户**: ```bash sudo dnf install -y https://mirrors.aliyun.com/centos/8-stream/BaseOS/x86_64/os/Packages/centos-stream-repos-8-4.el8.noarch.rpm ``` 2. **离线环境修复**: ```bash sudo yum-config-manager --disable \* # 禁用所有远程仓库 sudo yum --enablerepo=local install <package> # 使用本地仓库 ``` --- ### 五、预防措施 1. **定期更新镜像源**: ```bash sudo yum install -y yum-utils # 安装工具包 sudo yum-config-manager --enable \* # 确保仓库启用 ``` 2. **使用`nslookup`检测DNS**: ```bash nslookup mirrors.aliyun.com # 验证域名解析正常 ``` 3. **防火墙放行**: ```bash sudo firewall-cmd --permanent --add-service=http --add-service=https sudo firewall-cmd --reload ``` --- ### 典型错误对照表 | 错误特征 | 解决方案 | |-----------------------------------|---------------------------------------| | `repomd.xml not found` | 执行步骤2+步骤3+步骤4 | | `Invalid release/repo/arch` | 检查`/etc/yum.repos.d/`文件变量替换 | | 特定包404(如Erlang) | 使用步骤5单独修复仓库 | ---
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值