分享

sqoop1.4.6 从hdfs像mysql导入数据,参数--update-mode allowinsert 不更新,只insert

ltne 发表于 2015-12-21 23:03:26 [显示全部楼层] 回帖奖励 阅读模式 关闭右栏 3 27535
我首先从hdfs导入mysql数据,然后修改一下mysql中的数据,比如id:1 name:王武  修改为id:1 name:张三,
然后--update-mode allowinsert 结果就直接添加了,结果为
id:1 name:张三
id:1 name:王武
allowinsert 应该是更新才对,为什么会添加了呢??
PS:--update-key id

已有(3)人评论

跳转到指定楼层
tntzbzc 发表于 2015-12-22 11:49:48
楼主可以说的更详细些,下面供楼主参考

使用update方式导入,已存在的记录更新,不存在的插入新的(注意大小写)
[mw_shl_code=bash,true]sqoop export   -D oracle.sessionTimeZone=CST --connect jdbc:oracle:thin:@192.168.78.6:1521:hexel \
--username TRX --password trx --table SQOOP_UPDATE  --fields-terminated-by  '\t' \
--export-dir  /user/root/sqoop_update/ -m 1  --update-key ID --update-mode allowinsert \
--input-null-string '\\N'  --input-null-non-string '\\N'[/mw_shl_code]

回复

使用道具 举报

ltne 发表于 2015-12-22 22:50:30
谢谢,解决啦,最初建立数据库表的时候因为只是测试,没有设定主键,设定后就可以啦
回复

使用道具 举报

dajie 发表于 2017-10-29 23:07:39
ltne 发表于 2015-12-22 22:50
谢谢,解决啦,最初建立数据库表的时候因为只是测试,没有设定主键,设定后就可以啦

多谢,解决了我的问题。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条