将数据从 MySQL 加载到 HDFS 时出现 Sqoop 错误

Posted

技术标签:

【中文标题】将数据从 MySQL 加载到 HDFS 时出现 Sqoop 错误【英文标题】:Sqoop error while loading data from MySQL to HDFS 【发布时间】:2015-04-21 19:30:28 【问题描述】:

我正在运行一个 sqoop 将数据从 mysql 加载到 HDFS。 代码如下:

sqoop import \
--connect jdbc:mysql://test.xxx.net/LIVE \
--username pitt \
--password abcd \
--query "select * from tblMfg where 1=1 and \$CONDITIONS" \
--target-dir /user/pitt/tblMfg \
--fields-terminated-by '\t' \
--null-string '' \
--null-non-string '' \
-m 1

在 tblMfg 上:

Value of dateCreate column: 0000-00-00 00:00:00

Data type of dateCreate column: timestamp 

但是当我运行 sqoop 时,我得到了这个错误:

java.io.IOException: SQLException in nextKeyValue

0000-00-00 00:00:00�� 08:06:05��05����015-04-20 08:06:05�����5��5��' can not be represented as java.sql.Timestamp

有人可以解释一下这里发生了什么吗?

【问题讨论】:

【参考方案1】:

java.sql.timestamp 不能用值 0000-00-00 00:00:00 初始化。这就是错误的原因。尝试在 dateCreate 列中使用其他时间戳值导入,例如 2011-02-15 02:02:02。它应该可以工作。

【讨论】:

以上是关于将数据从 MySQL 加载到 HDFS 时出现 Sqoop 错误的主要内容,如果未能解决你的问题,请参考以下文章

将数据批量加载到使用 BCP 从 SQL Server 导出的 Snowflake 时出现 UTF-8 错误

使用 Azure 数据工厂将数据加载到雪花时出现问题

在 Hadoop 2.7.3 上执行简单 SQOOP 导入命令时出现 Sqoop 错误

使用 JDBC 连接器 5.1 从 Java 读取/写入 MySQL 中的 UTF-8 数据时出现问题

从 Cloud Storage Json 加载数据时出现 BigQuery 错误

sqoop从hive导入数据到mysql时出现主键冲突