DataX运行时报错:jdbc4.MySQLNonTransientConnectionException:Could not create database server

出现这个问题我是一脸懵逼的,因为datax作为一个牛逼的ETL工具使用了好几年,第一次碰见这样的问题,简单讲一下我的处理过程

第一感觉是源MySQL数据库的问题,因为之前也遇到过这个问题,是too many connections连接数过多拒绝连接,解决办法是调大数据库连接数或者关闭其他连接或者直接重启就可以,于是下意识的也重启了MySQL,结果还是不行

沉静下来冷静分析应该是java的问题,搜索一下这个异常是java的mysql-connector-java.jar与高版本的MySQL不匹配,果不其然去官网看,datax plugin里的MySQL插件还是5.1.34版的

于是进去MAVEN官网https://mvnrepository.com/artifact/mysql/mysql-connector-java下载了jdbc版本,可以根据源数据库的版本选择对应的mysql-connector-java.jar

DataX运行时报错:jdbc4.MySQLNonTransientConnectionException:Could not create database server_第1张图片

事情到这里,本应该结束,但是还是点出我的一个坑,那就是某些数据库即使你对应的版本下也没用,甚至会版本太高有问题,而且换一个MySQL就重新找一个jar太麻烦,所以我想出了一个巧法:把所有通用版本jar文件都放一起,系统自己选择适用的不就可以了?事实上真的可以!

我贴出这个福利:链接:https://pan.baidu.com/s/1yWNVUmVSWFbawLFSJLLf2Q  提取码:wmju 

大家只需要把四个jar包放进去datax/plugin/reader/mysqlreader/libs 这个目录里即可,最好把她们的属组调整一致,我这里是chown 501:games mysql-connector-java*.jar 

OK ,这样就搞定了,大家开心的python datax.py xxxx.json 吧

你可能感兴趣的:(大数据弄潮儿,Java)