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资源,果然运行之后问题就解决了。

相关推荐
人大博士的交易之路18 分钟前
龙虎榜——20250620
大数据·数学建模·数据挖掘·程序员创富·缠中说禅·龙虎榜
hwj运维之路37 分钟前
大数据系统架构实践(一):Zookeeper集群部署
大数据·zookeeper·系统架构
全栈小51 小时前
【数据库】在线体验KingbaseES平台,零门槛学习,并快速体验Oracle增改查全基础功能
数据库·学习·oracle
189228048611 小时前
NY339NY341美光固态闪存NW841NW843
大数据·数据库
DavidSoCool1 小时前
Elasticsearch 中实现推荐搜索(方案设想)
大数据·elasticsearch·搜索引擎
日月星宿~2 小时前
【redis】数据结构及操作命令
数据结构·数据库·redis
lilye662 小时前
精益数据分析(108/126):媒体网站用户参与时间优化与分享行为解析
大数据·数据分析·媒体
范纹杉想快点毕业2 小时前
Qt构造函数详解:布局与快捷键实战
c语言·开发语言·数据库·c++·qt·命令模式
莱茵不哈哈2 小时前
DB面试题
数据库·tidb·etcd
TDengine (老段)2 小时前
使用 Prometheus 访问 TDengine ---
大数据·数据库·prometheus·时序数据库·iot·tdengine·涛思数据