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

相关推荐
一只小bit1 天前
MySQL表的操作:创建—修改—删除流程解析
数据库·mysql·oracle
做运维的阿瑞1 天前
PostgreSQL 从入门到精通:Windows 环境下安装与使用指南
数据库·windows·postgresql
学编程的小鬼1 天前
MySQL的快速入门
数据库·mysql
_Power_Y1 天前
MySql复习及面试题学习
数据库·学习·mysql
学习编程的Kitty1 天前
MySQL——数据类型和表的操作
数据库·mysql
程序新视界1 天前
MySQL中,日期、时间与时间戳三种数据类型的区别
数据库·后端·mysql
卡拉叽里呱啦1 天前
Apache Iceberg介绍、原理与性能优化
大数据·数据仓库
lang201509281 天前
MySQL 8.0性能优化终极指南
数据库·mysql·性能优化
笨蛋少年派1 天前
大数据集群环境搭建(Ubantu)
大数据
Elastic 中国社区官方博客1 天前
在 Elasticsearch 中改进 Agentic AI 工具的实验
大数据·数据库·人工智能·elasticsearch·搜索引擎·ai·全文检索