sqoop 导出更新 table RDBMS 中的记录 MySQL
sqoop export update table record in RDBMS MySQL
所以我正在尝试在 MySQL 中的 RDBMS table 中执行更新。问题是,此更新来自我的 HDFS 中的一个文件,尽管在 MySQL 中 table 计数带有主键,但当我更新记录时,结果集却在描述中出现了重复值用新密钥更新以前的记录。在下面的示例中,记录 Financial 应该只出现一次,值为 9,但相反,我有两条记录,第一条记录的键值为 2,第二条记录的键值为 9。
我的 Sqoop 代码:
sqoop export --connect jdbc:mysql://xxxxxx/retail_export --username xxxxx --password xxxxx \
--table export_sqoop_dept --update-key id --update-mode allowinsert --export-dir /user/ingenieroandresangel/datasets/sqoop_export.txt \
-m 1
非常感谢大家。
您为 --update-key
提供的列不正确。
将 --update-key id
替换为 --update-key id_dept
。如果它不起作用,请仔细检查您的数据。我还建议在您的 sqoop 命令中使用 -input-fields-terminated-by
参数。
所以我正在尝试在 MySQL 中的 RDBMS table 中执行更新。问题是,此更新来自我的 HDFS 中的一个文件,尽管在 MySQL 中 table 计数带有主键,但当我更新记录时,结果集却在描述中出现了重复值用新密钥更新以前的记录。在下面的示例中,记录 Financial 应该只出现一次,值为 9,但相反,我有两条记录,第一条记录的键值为 2,第二条记录的键值为 9。
我的 Sqoop 代码:
sqoop export --connect jdbc:mysql://xxxxxx/retail_export --username xxxxx --password xxxxx \
--table export_sqoop_dept --update-key id --update-mode allowinsert --export-dir /user/ingenieroandresangel/datasets/sqoop_export.txt \
-m 1
非常感谢大家。
您为 --update-key
提供的列不正确。
将 --update-key id
替换为 --update-key id_dept
。如果它不起作用,请仔细检查您的数据。我还建议在您的 sqoop 命令中使用 -input-fields-terminated-by
参数。