CDP安装schema registry和streams messaging异常java.lang.ClassNotFoundException: com.mysql.cj.jdbc.Driver处理
异常
CDP7.1.1.0的CM安装完成后,在安装
schema registry和streams messaging manager组件时都会出现:Caused by: java.lang.ClassNotFoundException: com.mysql.cj.jdbc.Driver这样的异常。
原因
cdp7.1.1.0元数据数据库安装的是mysql5.7的版本,该版本的驱动类是com.mysql.jdbc.Driver,而com.mysql.cj.jdbc.Driver是mysql6以上版的驱动类,导致无法找到该类异常;
解决
将安装CM时的mysql5.7的驱动jar包移到相应的lib目录中即可。
具体步骤
1、首先会出现
Caused by: java.lang.ClassNotFoundException: com.mysql.cj.jdbc.Driver异常;
解决:
分别向
/opt/cloudera/parcels/CDH/lib/schemaregistry/bootstrap/lib
和
/opt/cloudera/parcels/CDH/lib/streams_messaging_manager/bootstrap/lib
目录中放入/usr/share/java中的mysql驱动包
2、解决1之后会出现
Causedby:java.lang.ClassNotFoundException: com.mysql.jdbc.jdbc2.optional.MysqlDataSource
解决:
分别向
/opt/cloudera/parcels/CDH/lib/schemaregistry/libs
和
/opt/cloudera/parcels/CDH/lib/streams_messaging_manager/libs
目录中放入/usr/share/java中的mysql驱动包
熄灯
下图是streams_messaging_manager(SMM)要放mysql5.x驱动包的目录,schemaregistry的目录可以以此类推;