我正在尝试使用Red Hat 5上的伪分布式模式在CDH4上设置Cloudera Impala.我有Hive使用JDBC连接到MySQL Metastore,但是我在使用JDBC设置Impala时遇到了麻烦.我一直在按照此处的说明操作:http://www.cloudera.com/content/cloudera-content/cloudera-docs/Impala/latest/Installing-and-Using-Impala/ciiu_impala_jdbc.html
我已经将JAR解压缩到一个目录并包含该目录$CLASSPATH.我也包括/usr/lib/hive/lib在$CLASSPATH里面了mysql-connector-java-5.1.25-bin.jar.
在我的Hive和Impala conf目录中,我hive-site.xml包含以下属性:
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://localhost/metastore</value>
</property>
<property>
<name>javax.jdo.option.ConnectionDriverName</name>
<value>com.mysql.jdbc.Driver</value>
</property>
<property>
<name>javax.jdo.option.ConnectionUserName</name>
<value>hiveuser</value>
</property>
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>password</value>
</property>
<property>
<name>datanucleus.autoCreateSchema</name>
<value>false</value>
</property>
<property>
<name>datanucleus.fixedDatastore</name>
<value>true</value>
</property>
Run Code Online (Sandbox Code Playgroud)
但是当我运行时sudo service impala-server restart,服务器日志有这个错误:
ERROR common.MetaStoreClientPool: Error initializing Hive Meta Store client
javax.jdo.JDOFatalInternalException: Error creating transactional connection factory
Run Code Online (Sandbox Code Playgroud)
它说的原因是:
Caused by: org.datanucleus.store.rdbms.datasource.DatastoreDriverNotFoundException: The specified datastore driver ("com.mysql.jdbc.Driver") was not found in the …Run Code Online (Sandbox Code Playgroud)