sqoop1 从sqlserver导出数据到HDFS报错
sqlserver数据库中,凡是含有datetime类型字段的表,都报一样的错误,不含datetime类型的表则导出成功环境是:
sqoop1.4.6
jdk1.8
sqljdbc42.jar
(注,我这里试了下mysql数据库-含有datetime字段,是导出成功的)
请问下如何解决
补充下导出命令:sqoop import--connect "jdbc:sqlserver://xxxx:1433;DatabaseName=test" --username xxx --password 123456 --table AU_User --target-dirhdfs://hadoop1:8020/user/yinhuotong/test06 --m 1
本帖最后由 desehawk 于 2018-1-29 18:04 编辑
yuhaiyang 发表于 2018-1-29 17:38
补充下导出命令:sqoop import--connect "jdbc:sqlserver://xxxx:1433;DatabaseName=test" --username xx ...
尝试转换下字段类型,例子如下
sqoop import--connect "jdbc:sqlserver://xxxx:1433;DatabaseName=test" --username xxx --password 123456 --query 'SELECT 。。。。。。。 CAST (lastactive AS TIMESTAMP), ... FROM AU_UserWHERE $CONDITIONS'
....目标是全表导出,然后发现这个错误了 desehawk 发表于 2018-1-29 18:03
尝试转换下字段类型,例子如下
sqoop import--connect "jdbc:sqlserver://xxxx:1433;DatabaseName=tes ...
....目标是数据库全表导出,然后发现这个错误了
yuhaiyang 发表于 2018-1-29 18:17
....目标是数据库全表导出,然后发现这个错误了
那就全表导出啊,select 所有字段不就可以了。不加where,全库导出也没问题啊。使用shell依次执行。
desehawk 发表于 2018-1-29 18:03
尝试转换下字段类型,例子如下
sqoop import--connect "jdbc:sqlserver://xxxx:1433;DatabaseName=tes ...
感谢,看了你的评论,又了灵感
desehawk 发表于 2018-1-29 18:33
那就全表导出啊,select 所有字段不就可以了。不加where,全库导出也没问题啊。使用shell依次执行。
谢谢您的回答
页:
[1]