专栏首页Hadoop实操0788-7.1.1-CDP安装SMM服务启动异常

0788-7.1.1-CDP安装SMM服务启动异常

异常描述

在CDP7.1.1的安装过程中,添加SMM组件后,配置完数据库信息,启动服务过程中,提示启动Streams Messaging Manager Rest Admin Server角色失败。如下图:

报错信息为:

Exception in thread "main" org.flywaydb.core.api.FlywayException: Unable to instantiate JDBC driver: com.mysql.cj.jdbc.Driver => Check whether the jar file is present
    at org.flywaydb.core.internal.util.jdbc.DriverDataSource.<init>(DriverDataSource.java:142)
    at org.flywaydb.core.api.configuration.ClassicConfiguration.setDataSource(ClassicConfiguration.java:1147)
    at org.flywaydb.core.Flyway.setDataSource(Flyway.java:712)
    at com.hortonworks.registries.storage.tool.sql.SchemaFlywayFactory.mysqlFlyway(SchemaFlywayFactory.java:58)
    at com.hortonworks.registries.storage.tool.sql.SchemaFlywayFactory.get(SchemaFlywayFactory.java:44)
    at com.hortonworks.registries.storage.tool.sql.TablesInitializer.main(TablesInitializer.java:176)
Caused by: org.flywaydb.core.api.FlywayException: Unable to instantiate class com.mysql.cj.jdbc.Driver : com.mysql.cj.jdbc.Driver
    at org.flywaydb.core.internal.util.ClassUtils.instantiate(ClassUtils.java:61)
    at org.flywaydb.core.internal.util.jdbc.DriverDataSource.<init>(DriverDataSource.java:132)
    ... 5 more
Caused by: java.lang.ClassNotFoundException: com.mysql.cj.jdbc.Driver

异常分析

根据报错分析是找不到JDBC驱动。在CDP7.1中SMM和SchemaRegistry必须将mysql-connector-java.jar放在自己的库目录中,而我们默认是放在/usr/share/java中的。所以这里我们需要把JDBC驱动放置到需要的库中。

解决办法

1.把JDBC驱动分别软链到SMM和SchemaRegistry的库目录中

[root@cdh03 java]# cd /opt/cloudera/parcels/CDH/lib/schemaregistry/bootstrap/lib
[root@cdh03 lib]# ln -s /usr/share/java/mysql-connector-java.jar
[root@cdh03 lib]# cd /opt/cloudera/parcels/CDH/lib/schemaregistry/libs
[root@cdh03 libs]# ln -s /usr/share/java/mysql-connector-java.jar
[root@cdh03 libs]# cd /opt/cloudera/parcels/CDH/lib/streams_messaging_manager/bootstrap/lib
[root@cdh03 lib]# ln -s /usr/share/java/mysql-connector-java.jar
[root@cdh03 lib]# cd /opt/cloudera/parcels/CDH/lib/streams_messaging_manager/libs
[root@cdh03 libs]# ln -s /usr/share/java/mysql-connector-java.jar

2.配置完之后,从CM启动服务测试

重启成功,异常解决。

总结

在CDP7.1中SMM和SchemaRegistry必须将JDBC驱动放在自己的库目录中,这跟以前默认的地址/usr/share/java不同,需要手动进行配置。

本文分享自微信公众号 - Hadoop实操(gh_c4c535955d0f),作者:Fayson

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2020-07-12

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • HiveServer2服务异常日志分析

    2.该异常会在Thrift0.9.2及更低版本的HiveServer2服务上出现。

    Fayson
  • 非Kerberos环境下Kafka数据到Flume进Hive表

    前面Fayson讲过《如何在Kerberos环境使用Flume采集Kafka数据并写入HDFS》,本篇文章主要讲述如何在非Kerberos环境下将Kafka数据...

    Fayson
  • 0810-5.15.1-Impala执行invalidate metadata异常分析

    本文描述了对CDH集群Impala在执行invalidate metadata,出现“Error communicating with impalad: TSo...

    Fayson
  • Java中常见死锁与活锁的实例

    可以看到bThread持有锁0x00000007aaee5758,同时等待0x00000007aaee5748,然而恰好aThread持有锁0x00000007...

    爬蜥
  • java入门

    一、java的运行机制 高级语言的运行机制主要有编译型和解释型两种。 C/C++属于编译型语言,由专门的编译器针对特定的操作系统平台进行翻译,生成可执行代码,特...

    用户1215536
  • SpringBoot开发案例从0到1构建分布式秒杀系统

    小柒2012
  • SpringBoot开发案例从0到1构建分布式秒杀系统

    最近,被推送了不少秒杀架构的文章,忙里偷闲自己也总结了一下互联网平台秒杀架构设计,当然也借鉴了不少同学的思路。俗话说,脱离案例讲架构都是耍流氓,最终使用Spri...

    小柒2012
  • 为什么要学习java?

    大家好!这个网站的目标是为了方便大家更好的学习java&android编程。不管你是初学者还是一个经验丰富的程序员,相信这个网站对你都会有很大的帮助。只要大家每...

    Java学习
  • 为什么java越来越强势

    ? 目前很多的从业都有这种感觉,突然觉得c/c++就业机会以及升职的空间比java的差距越来越大了,有人就宣称java是目前国内就业最好的语言,说的有点夸张但...

    Java帮帮
  • Java项目中使用最多的排名前100的类,你用的最多的是哪些

    从事Java软件开发工作很大程度是要利用各种类库的api,有组织曾经从10000个开放源码的Java项目中,统计API类的使用频率;下面的列表显示了前100名。...

    用户1289394

扫码关注云+社区

领取腾讯云代金券