当我尝试使用Sqoop将数据从mysql导入HDFS并运行以下命令时
sqoop import --connect jdbc:mysql:// IP地址/数据库名称 --username root --password password --table table name --m 1
我收到以下错误
ERROR manager.SqlManager:从数据库读取错误: java.sql.SQLException:流结果集 com.mysql.jdbc.RowDataDynamic@555b6c34仍处于活动状态。没有陈述 可以在任何流式传输结果集打开并在a上使用时发布 给定连接。确保您已在任何活动状态上调用.close() 在尝试更多查询之前流式传输结果集。
我无法理解它是什么,并浏览了许多网站的解决方案,但甚至没有得到线索。
请建议。
答案 0 :(得分:7)
尝试提及驱动程序名称,它对我有用
int value = 0331234;
value.ToString("[000-0000]")
为我工作。三江源。
答案 1 :(得分:3)
对您的例外进行快速谷歌搜索会给我一个印象,即这是在sqoop中报告的错误。看起来他们已经解决了。请查看此https://issues.apache.org/jira/browse/SQOOP-1400
。
验证您的sqoop和mysql连接器版本,并在需要时更新到更新版本。感谢。
答案 2 :(得分:2)
使用后我的问题得到了解决:
--driver com.mysql.jdbc.Driver
在sqoop脚本中。
e.g。
sqoop import --connect jdbc:mysql://IP Address/database name --username root --password password --table table name --m 1 --driver com.mysql.jdbc.Driver