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

相关推荐
好望角雾眠20 分钟前
第三阶段数据库-7:sql中函数,运算符,常用关键字
数据库·笔记·sql·学习·sqlserver·c#
牛角上的男孩3 小时前
apt update Ign and 404 Not Found
开发语言·数据库
青云交7 小时前
Java 大视界 -- Java 大数据在智能安防人脸识别系统中的活体检测与防伪技术应用
java·大数据·生成对抗网络·人脸识别·智能安防·防伪技术·活体测试
瓜酷月..7 小时前
MySQL的高可用+MHA
数据库·mysql
差不多的张三7 小时前
【解决方案】powershell自动连接夜神adb端口
数据库·adb
chenglin0167 小时前
ES_索引模板
大数据·elasticsearch·jenkins
小马哥编程8 小时前
【软考架构】第6章 数据库基本概念
数据库·oracle·架构
自学也学好编程8 小时前
【数据库】PostgreSQL详解:企业级关系型数据库
数据库·postgresql
byte轻骑兵9 小时前
大数据时代时序数据库选型指南:深度解析与 Apache IoTDB 实践
大数据·apache·时序数据库
.Eyes10 小时前
OceanBase 分区裁剪(Partition Pruning)原理解读
数据库·oceanbase