0

我正在与 Pig 合作,我正在尝试将我的结果存储在 MySQL 数据库中。根据我在这个网站上找到的帮助,我正在使用:

STORE final_data INTO '$dbTable' USING org.apache.pig.piggybank.storage.DBStorage('com.mysql.jdbc.Driver','jdbc:mysql://$host:$port/$db','$dbUser','$dbPass','INSERT INTO $dbTable');

我也在导入罐子(目录是正确的): piggybank.jar, mysql-connector-java-5.1.20-bin.jar

但是,当我运行 Pig 脚本时出现以下错误:

[MainThread] ERROR org.apache.pig.piggybank.storage.DBStorage - can't
load DB driver:com.mysql.djbc.Driver

java.lang.ClassNotFoundException: com.mysql.jdbc.Driver


[MainThread] ERROR org.apache.pig.tools.grunt.Grunt - ERROR 2999:
Unexpected internal error. could not instantiate
'org.apache.pig.piggybank.storage.DBStorage' with arguments
'[com.mysql.jdbc.Driver, jdbc:mysql://x.xxx.xxx.xxx:xxxx/database,
username, password, INSERT INTO myTable]'

有人看到代码错误吗?或者,也许我错过了一个罐子?如果您对如何在 MySQL 数据库中存储 Pig 数据有其他建议,我也很想听听。

4

1 回答 1

1

尝试将 mysql-connector-java 添加到 PIG_CLASSPATH

谢谢,这正是我需要做的!做 REGISTER 显然是不够的。

于 2012-10-10T20:37:13.277 回答