2013-06-18 51 views
7

Tôi đang cố gắng thiết lập Cloudera Impala bằng CDH4 ở chế độ phân tán giả trên Red Hat 5. Tôi có Hive sử dụng JDBC để kết nối với một kho dữ liệu MySQL, nhưng tôi đang có rắc rối khi thiết lập Impala với JDBC. Tôi đã làm theo các hướng dẫn được tìm thấy tại đây: http://www.cloudera.com/content/cloudera-content/cloudera-docs/Impala/latest/Installing-and-Using-Impala/ciiu_impala_jdbc.htmlImpala không thể tìm thấy com.mysql.jdbc.Driver

Tôi đã trích xuất các JAR vào một thư mục và bao gồm thư mục đó trong $CLASSPATH. Tôi cũng đã bao gồm /usr/lib/hive/lib trong $CLASSPATH, trong đó có mysql-connector-java-5.1.25-bin.jar.

Trong cả hai Hive và Impala conf danh bạ của tôi, tôi có hive-site.xml bao gồm các thuộc tính sau:

<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> 

Nhưng khi tôi chạy sudo service impala-server restart, nhật ký máy chủ có lỗi này:

ERROR common.MetaStoreClientPool: Error initializing Hive Meta Store client 
javax.jdo.JDOFatalInternalException: Error creating transactional connection factory 

Mà nó nói là nguyên nhân của việc này:

Caused by: org.datanucleus.store.rdbms.datasource.DatastoreDriverNotFoundException: 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. 
    at org.datanucleus.store.rdbms.datasource.dbcp.DBCPDataSourceFactory.makePooledDataSource(DBCPDataSourceFactory.java:80) 
    at org.datanucleus.store.rdbms.ConnectionFactoryImpl.initDataSourceTx(ConnectionFactoryImpl.java:144) 
    ... 57 more 

Có bất kỳ bước nào tôi thiếu để cấu hình Impala với JDBC không?

+0

Bạn đã thêm thư viện vào đường dẫn lớp như thế nào? '/ usr/lib/hive/lib' hoặc'/usr/lib/hive/lib/*. jar'? – climbage

+0

'/ usr/lib/hive/lib/*. Jar', nhưng tôi đã thử cả hai. – supermaria

+0

Hmmm, cũng có ý tưởng đó. – climbage

Trả lời

5

Tôi đã khắc phục điều này bằng cách sao chép mysql-connector-java-5.1.25-bin.jar đến /var/lib/impala - tập lệnh khởi động đã yêu cầu đường dẫn lớp nhìn vào đây vì bình kết nối vì một lý do nào đó.

Các vấn đề liên quan