sqoop1.4.7连接postgre数据库问题解决

首先配置conf/sqoop-env.sh文件,将temp改名并修改内容

加入hadoop,hive,zookpeer,hbase的配置,

然后将有关的驱动导入lib文件夹下,

遇到问题

Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/lang/StringEscapeUtils

解决办法,网上找到org.apache.commons.lang的有关jar,

但是他有几个大版本的更新,1.x,2.x,3.x的都有,于是就一个个尝试,在2.x版本导入后成功

其中还遇到错误,执行命令时用的root用户,但是提示

org.apache.hadoop.security.AccessControlException: Permission denied: user=root, access=EXECUTE, inode="/tmp":person:supergroup:drwxrwx---

切换用户后成功

 

在导入过程中,注意如果遇到空的字段,是会只导入一部分表,然后报错停止

解决办法,指定处理的字符

 

--input-null-string '\\N' \
--input-null-non-string '\\N' \

 

posted @ 2022-03-05 16:42  durtime  阅读(172)  评论(0)    收藏  举报