sqoop连接mysql报错

完整报错如下:

Loading class `com.mysql.jdbc.Driver'. This is deprecated. The new driver class is `com.mysql.cj.jdbc.Driver'. The driver is automatically registered via the SPI and manual loading of the driver class is generally unnecessary.

前言

最近刚接触了CDH集群,然后在使用sqoop转存MySql中的数据时,发现由于我的数据库版本是8.0的,
于是我在sqoop的lib中添加了8.0的数据库驱动mysql-connector-java-8.0.30.jar,然后就可以连接了;
但是当我再去连接一个5.7.24版本的mysql的时候就报找个错误,可我找了一个5.7.3的MySQL试了一下 是可以连接的,难道就恰好卡这么死吗?

希望有懂的大佬可以解释一下

问题解决

sqoop连接MySQL是不需要指定–driver的,但是我在想是不是它冲突了,但我指定上再连接还是会报错。

我在百度上看了好多问题,但是看到的答案吧都emmm。有说把数据库驱动版本降低的,但是我降低后,我不就连不上高版本的MySQL了吗。最后实在没办法了,我决定尝试一下直接再放一个低版本的驱动进去,希望它不会冲突。

还好我放了一个mysql-connector-java-5.1.27.jar后,用sqoop list-databases --connect连接,没有报错也正常显示出数据库了。

sqoop list-databases --connect jdbc:mysql://xxx:3306/databasename --username user --password yourpassword

但这只是暂时的解决了问题,如果有大佬能看到希望稍微解释一下,不胜感激!

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐