spark写数据库用连接池找不到driver类

最近遇到一个很离谱的bug,在写spark代码把数据写到mysql的时候考虑到连接的开销,所以用了HikariCP连接池,但是无语的是程序执行死活加载不到mysql的Driver类,但是解压了jar看到mysql-conn包就在lib下面,版本也是5.x的没问题,还尝试了--jars,也没解决,倒腾了各种方式,网上也查到确实有人复现这个问题---》百度EMR spark

最终灵光一闪,想到写原生Java的jdbc需要手动class-load一下,所以就在想也给连接池手动load一下是否可行,最终测试发现会类冲突。到此想到难道连接池和spark调用jdbc的类加载逻辑不一样?就想到一个妖点子,把mysql-driver包放在了spark的jars资源路径里面,当作引擎的class资源,果然运行之后问题就解决了。

相关推荐
TDengine (老段)8 小时前
TDengine 超级表/子表/普通表 — 设计理念与内部表示
android·大数据·数据库·物联网·时序数据库·tdengine·涛思数据
oo哦哦8 小时前
深度解析:星链引擎全域智能营销矩阵系统的技术架构与实践
大数据·矩阵·架构
老纪9 小时前
c++怎么利用std--variant处理多种二进制子协议包的自动分支解析【进阶】
jvm·数据库·python
pigs20189 小时前
Docker容器中Kingbase数据库授权到期更换解决方案
数据库·docker·容器
jiayong239 小时前
Git 常见错误与详细解决方案
大数据·git·elasticsearch
guygg889 小时前
C# 监听数据库数据变化(SqlDependency 实现)
数据库·oracle·c#
隐退山林9 小时前
JavaEE进阶:MyBatis 操作数据库(入门)
数据库·java-ee·mybatis
视***间9 小时前
视程空间AIR系列——小体积藏强芯,赋能机器人/机器狗全域落地
大数据·人工智能·机器人·机器狗·ai算力·视程空间
晴天¥9 小时前
达梦数据库的内存结构
服务器·数据库·达梦数据库
倔强的石头_9 小时前
生产环境排坑实录:SQL 标量子查询的“静默杀手”与优化器的智能推演
数据库