我们正在使用 Cloudera 3.7.5,并且很难配置 Beeswax 服务器,以便 Hue 可以访问 Hive 数据库。我按照 Cloudera 文档中的所有说明将 MySQL 设置为 Hive 的元存储,但是当我重新启动 Hue 服务并检查 Beeswax 服务器的 StdErr 日志时,我仍然看到痛苦的“javax.jdo.JDOFatalInternalException:创建事务连接工厂时出错“这是由
org.datanucleus.exceptions.NucleusException: Attempt to invoke the "DBCP" plugin to create a ConnectionPool gave an error : The specified datastore driver ("com.mysql.jdbc.Driver") was not found in the CLASSPATH. Please check your CLASSPATH specification, and the name of the driver.
这对我来说很奇怪,因为日志还表明环境变量 HIVE_HOME 等于“/usr/lib/hive”,果然我已经复制了“mysql-connector-java-5.1.15-bin.jar”按照文档的指示,进入 /usr/lib/hive/lib 目录。
我还尝试了博客文章http://hadoopchallenges.blogspot.com/2011/03/hue-120-upgrade-and-beeswax.html上的说明,其中涉及将 mysql-connector jar 复制到“/usr/共享/色调/应用程序/蜂蜡/hive/lib/”。不幸的是,我在蜂蜡文件夹中没有 hive/lib 子目录,所以我尝试制作一个。这也没有奏效。
有什么建议可以让我将 MySQL JDBC 库放到 Beeswax 的类路径中吗?